Abraham Verghese Interview, plus links to author biography, book summaries, excerpts and reviews

Abraham Verghese
Photo: Joanne Chan

Abraham Verghese

How to pronounce Abraham Verghese: vur-gees with a hard 'g'

An interview with Abraham Verghese

An interview with Abraham Verghese about his life and writing and in particular about his extraordinary 2009 novel Cutting for Stone, set in 1960s and '70s Ethiopia and 1980s New York.

An interview with Abraham Verghese about his life and writing and in particular about his 2009 novel Cutting for Stone

Your previous two books are non-fiction, but you've said that you have always thought of yourself as a fiction writer first. How so?
Fiction is truly my first love. To paraphrase Dorothy Allison, fiction is the great lie that tells the truth about how the world really lives. It is why in teaching medical students I use Tolstoy's The Death of Ivan Ilych to teach about end-of-life, and Bastard out of Carolina to help students really understand child abuse. A textbook rarely gives them the kind of truth or understanding achieved in the best fiction.

One of my first published short stories was "Lilacs," in which the protagonist has HIV. Its appearance in The New Yorker in 1991 was a part of what led to my contract to write My Own Country, a memoir of my years of caring for persons with HIV in rural Tennessee. While writing that book I found myself living through an intense personal story of friendship and loss that led to a second non-fiction book, The Tennis Partner. But after that, I passed up on an offer to write a third non-fiction book. I was keen to get back to fiction, to explore that kind of truth.

In 1990, while practicing medicine, you decided to attend the Iowa Writers' Workshop and obtain a degree in Fine Arts. What led you to go back to school—particularly for creative writing—while you were in the middle of a successful career as a doctor? At the time I was living in Johnson City, Tennessee, working at a small medical school as an internist and infectious diseases specialist. Between '85 and '90, we began to see many HIV-infected persons at a time when the pundits said AIDS was a big-city disease, and we'd never see it in our small communities. Soon we had close to 100 patients in a town of 50,000, a mystery I explained in My Own Country. It was an intense, sad, heartbreaking period because we had no real therapy and lots of prejudice and hatred, but also lots of courage and heroism. Not having anything by way of medicine to offer my patients, I began to visit with them at times in their homes. That is when I found that even when I had nothing to offer, I had everything to offer: It was the distinction between healing and curing (and the cure was what all of us in Western medicine were obsessed with). I realized that I could heal when I could not cure, meaning that my presence, my interest and support, could help the patient and the family come to terms with the illness, come to terms with death. But by the fifth year of this practice, with little in the way of help, I was getting burned out.

If I wanted to stay in the war against AIDS—and I did—I needed to pace myself, to take a break. I had been writing short stories and essays as a way of keeping sane during those intense days. So I decided I would apply to the Iowa Writers' Workshop, send in my two stories, and if they took me, I would go. If they didn't take me, I was still determined to take a break and support my family by working in emergency rooms. Well, Iowa took me, and I wound up cashing in my 401K plan and giving up my tenured position to drive out there with my wife and two young children. As I look back, I think it was a very selfish thing to put my family through, but it was an act of self-preservation, too—I felt I would implode if I didn't take a break.

In Iowa, I worked in the University HIV clinic once a week. Other than that and the workshop that met weekly, my time was gloriously free to read and write. Given my background, this was precious time—I didn't think I would ever get time like that again (and I haven't)—so I worked very hard for the year and a half it took me to finish. The bills piled up, and when I was done, I needed to get a regular job again, which is how I landed up in El Paso at Texas Tech's teaching hospital there. I chose a place well off the main academic trail because I thought that my nights and weekends would be mine, no grants to write. That turned out to be true and my first two books were written there.

Was there a single idea behind or genesis for Cutting for Stone?
My ambition as a writer was to tell a great story, an old-fashioned, truth-telling story. But beyond that, my single goal was to portray an aspect of medicine that gets buried in the way television depicts the practice: I wanted the reader to see how entering medicine was a passionate quest, a romantic pursuit, a spiritual calling, a privileged yet hazardous undertaking. It's a view of medicine I don't think too many young people see in the West because, frankly, in the sterile hallways of modern medical-industrial complexes where physicians and nurses are hunkered down behind computer monitors, and patients are whisked off here and there for this and that test, that side of medicine gets lost.

So I began with the image of a mission hospital in Africa, redolent with Dettol, the antiseptic of choice of the tropics; I wanted to portray a place so basic, so unadorned, that nothing separates doctor and patient, no layers of paperwork, technology or specialists, no disguising of the nature of the patient's experience or the raw physician experience. It's a setting where the nature of the suffering, the fiduciary responsibility and moral obligation to the patient and society are no longer abstract terms. In that setting I wanted to put very human, fallible characters—people like Sister Mary Joseph Praise and Thomas Stone. I wanted the whole novel to be of medicine, populated by people in medicine, the way Zola's novels are of Paris.

Where does the title "Cutting for Stone" come from?
There is a line in the Hippocratic Oath that says: ... I will not cut for stone, even for patients in whom the disease is manifest ... It stems from the days when bladder stones were epidemic, a cause of great suffering, probably from bad water and who knows what else. Adults and children suffered so much with these—and died prematurely of infection and kidney failure. There were itinerant stone cutters— lithologists—who could cut either into the bladder or the perineum and get the stone out, but because they cleaned the knife by wiping it on their blood-stiffened surgical aprons, patients usually died of infection the next day. Hence the proscription, "thou shall not cut for stone." It has always seemed to me a curious thing to say when we recite the oath in this day and age. But I love the Hippocratic Oath (or oaths, because its origins and authorship are far from clear), and always try to attend medical school commencement. When the new graduates stand and take the oath, all the physicians in the room are invited to rise and retake the oath. You see many physician parents and physician siblings standing as their son or daughter or brother or sister takes the oath. It chokes me up every time. Not only am I renewing my faith, but I am bursting with pride in seeing my students graduate—another part of the oath is "to teach them this art, if they desire to learn it; to give a share of precepts and oral instruction and all the other learning to my children and to the children of those who instructed me and to pupils who have signed the covenant and have taken an oath according to the medical law."

How does all this relate to my novel? It isn't just that the main characters have the surname 'Stone'; I was hoping the phrase would resonate for the reader just as it does for me, and that it would have several levels of meaning in the context of the narrative.

Each of the characters in this novel is drawn to medicine in different ways and for different personal reasons. What drew you to medicine?
I was the middle of three sons of Indian parents who taught college physics. My brothers had a precocious ability with numbers, while I had no head for math—or much else in the curriculum. For middle-class Indian parents only three professions exist: medicine, engineering, and law. My older brother announced he was going to be an engineer, which delighted my parents. I felt obliged to proclaim that I intended to be a doctor. I figured that my propensity to fall and bleed, my unseemly interest in witnessing chickens and sheep being slaughtered for the kitchen, and my fascination with watching animals give birth could now be viewed as a form of scholarship. This was my false call to medicine.

My true call to medicine came in the form of a book. By the time I picked up Of Human Bondage by Somerset Maugham I had already read Lolita and Lady Chatterley's Lover. I was twelve, I think. Maugham's protagonist, Philip, sets out for Paris to become an artist. Money is tight, and he lives on the brink of starvation, and finally finds he does not have the talent. He is crushed and disappointed but also relieved to have discovered what is not to be his calling. He returns to London and enters medical school. When after years of slogging away he enters the outpatient clinic for the first time, he realizes he has made the right choice. The particular lines that stayed with me, that have haunted me, were: "There was humanity there in the rough, the materials the artist worked on; and Philip felt a curious thrill when it occurred to him that he was in the position of the artist ..."

The phrase "humanity there in the rough" spoke directly to my twelve-year-old mind. I took it to mean that if one had no God-given talent to be an artist (or mathematician), one could aspire to be a doctor, perhaps even a good one. The beauty of medicine is that it is proletarian, and its prime prerequisite is that you have an interest in humanity in the rough. Many of us also come to medicine because we are wounded in some way. Thomas Stone is a great example, but so is Marion Stone.

How has being a doctor influenced you as a writer and vice versa? Do you think practicing one has helped you practice the other?
I think sometimes we make too much of the doctor-writer business—it's in danger of becoming a cliché. I've not put MD behind my name on any books, except one that was called "Infections in Nursing Home and Long Term Care Facilities." Unless I'm writing a diet book or a textbook like the one above, the doctoring seems kind of irrelevant—the writing has to stand on its own, don't you think? Or else every writer should put their AB, and JD, and MFA and whatnot after their name on the title.

That said, I confess that my love of medicine feeds this book and much of my other writing. There are lots of parallels between writing and medicine. I remember hearing the aphorism "God is in the details" both in medical school and also at the Writers' Workshop. When we see a patient we take a 'history'—the word "story" is in there. As a consultant, when I see a patient whom others have seen before me, if I can shed light on the problem it is often because the particular patient story resonates with my repertoire of stories and so I know where it is heading. I have given Ghosh—the internal medicine specialist at Cutting for Stone's Missing hospital—some of these attributes. Internal medicine, which is also my field, is so much about details, about tying together disparate clues to come up with a unifying diagnosis and about close observation. Medicine is full of wonderful aphorisms which I love, like, "beware of the woman with the glass eye and the big liver" (which refers to the fact that melanoma of the eye, a common cause for an eye to be removed, can be followed many years later with liver metastases). And as for metaphors, to list just a few fruit metaphors, we have the strawberry tongue of scarlet fever (which becomes the raspberry tongue the next day), and the cherry red spot in the retina, the peau d'orange appearance of the breast, the melon seed body of TB, the currant jelly stools of intussusception ... .(It is very revealing that modern medicine with so many new diseases—AIDS, SARS, Lyme—has not to my knowledge in the last fifty years come up with a metaphor as colorful as the mulberry molar or the cracked-pot skull or the saber-shinned tibia. It speaks of a disturbing atrophy of the imagination, an obsession with the science at the expense of the art. If I hear the word 'evidence-based' medicine any more, I think I'll be sick.)

So, to answer your question, being in medicine is helpful, particularly for the novel I chose to write. But it provides no short cuts. Writing is still hard, and the real art is in the revision, the real talent is in having the stamina, in being able to delay gratification over the many years it takes to get it right.

Though you confront serious issues in the novel, there is much humor in it, too. Was it a conscious choice to bring humor in, and if so, why? Levity finds its way into many of the medical scenes (Ghosh performing a vasectomy, for example); was there an element of wanting to make medicine less intimidating?
The humor surprised me. I didn't set out to be funny or to inject comedy into the novel. And that's probably a good thing, because it's difficult to deliberately try to write humorous stuff. That said, there are many occasions for side-splitting laughter in medicine, but one has to be careful that the patient never construes this as our being light-hearted about his or her suffering. I've drawn on some of my most memorable professors, the ones who told the bawdiest stories that were therefore unforgettable. I so much want to tell my students these stories, but common sense stops me. We've become so sensitive.

I once, in print, called the coronary artery bypass operation the great blow-job of American medicine: lucrative for one, satisfying for the other, but biologically a dead end. Many were not amused, let me tell you.

The question "What treatment is administered in an emergency by ear?" is important to many of the characters in this novel. Perhaps you can tell us the correct answer, and also tell us how the answer informs the book.
The answer to this trick question that recurs in the book is of course, 'words of comfort.' It's the sort of thing examiners like to ask in the British system, in the places that still have the viva voce—the terrifying oral exams—and that still test physicians on real patients, not make-believe patients. Alas, in America, we are getting so 'virtual' that board-certified internists become board-certified by taking a multiple-choice examination. No one really tests that they can feel an enlarged spleen, or diagnose and put together physical signs at the bedside.

'Words of comfort' relate to a sense I have that the patient in America is becoming invisible. The patient is unseen and unheard. The patient is presented to me by the intern and resident team in a conference room far away from where the patient lies. The patient's illness has been translated into binary signals stored in the computer. When we do go to the bedside to make rounds, often physicians are no longer at ease. It is as if the patient in the bed is merely an icon for the real patient, who exists in the computer. But none of these tests done at a distance substitute for being with the patient, for the 'words of comfort' aspect of treatment.

When one knows how to look, the patient's body reveals many things—it is an illuminated manuscript. I am no Luddite and have no illusions that the kind of exam I do is superior to a CAT scan or MRI. But a skilled exam can do two things: first, it can allow us to practice cost-effective medicine by generating a reasonable diagnosis at the bedside and ordering selective tests, rather than the shotgun approach, where we tick off everything that seems remotely interesting on the lab and radiology slips. Secondly, the skilled exam done with courtesy and done well conveys something important about caring and about professionalism to the patient; indeed it is a key component to building a good physician-patient relationship. Particularly in patients with chronic illness, where there are few dramatic interventions that one can prescribe, a good physician-patient relationship can support the patient through the ups and downs of an illness; the physician's presence, the 'words of comfort' aspect, can be therapeutic in itself.

The fact that patients with chronic illness increasingly seek the attention of naturopaths, refelexologists, acupuncturists, and others has a lot to do with the fact that these individuals will spend time and put hands on the patient, where the physician does that infrequently or in a cursory fashion. When your head is wrapped around the latest gene-array test or 'evidence-based medicine' (as though what preceded it was witchcraft), then you might underestimate the importance of 'words of comfort.'

You bring Ethiopia to life so vividly—its contradictions of beauty and poverty. Addis Ababa (and Missing Hospital) is so much a part of each character though some come to it from other places or leave it for other places. Why did you decide to set much of this novel there? And how do you think the atmosphere of the place affected your life?
Even in this era of the visual, I think a novel can bring the feel of a place out better than almost any vehicle. It's another thing that Somerset Maugham did so well. The few images one sees of Ethiopia are uniformly negative, about war and poverty. I wanted to depict my love for that land and its people, for their incredible beauty and grace and their wonderful character.
I wanted also to convey the loss many felt when the old order gave way to the new. Ethiopia had the blight of being ruled by a man named Mengistu for too many years, a man propped up by Russia and Cuba. My medical school education was actually interrupted when Mengistu came to power and the emperor went to jail. As an expatriate, I had to leave. It was my moment of loss. Many of my medical schoolmates became guerilla fighters, trying to unseat the government. Some died in the struggle. One of them fought for over twenty years, and his forces finally toppled the dictator. Meles Zenaweis, now Prime Minister of Ethiopia, was a year behind me in medical school. I went through hard times because of the disruption, but I eventually finished my medical education in India. But what I went through was nothing compared to what others went through—they were willing to die for their cause.

At the heart of this novel there is a love story—that of Sister Mary Joseph Praise and Dr. Thomas Stone—which informs almost everything that happens to each character in the book, and yet one of these characters is dead and one has not been seen by anyone for decades. How did you conceive of their relationship, and how do they exert such force on the novel even though neither is present for the majority of it?
Love to me has a quality to it like a trip wire—hence we 'fall' in love, instead of simply 'arriving' to love. Love comes down to a set of wills trying to match and sometimes mismatching in spectacular fashion; I think all love is unrequited unless we have a clone of ourselves and even then the love is unrequited. In my day job I see all too often that people's appreciation of the existence of love, of the meaning of love, or of the idea that the meaning of life turns out to be love—all these are arrived at too late, when the love is long lost, or arrived at just before the moment of death. Perhaps what love seeks is not reciprocity but redemption, the sense that who you are is worthy and was always worthy of love.

Thomas Stone and Sister Mary Joseph Praise's love is hidden even from them by the strict boundaries of their chosen professions and then even more so by their professional relationships. It takes a miracle or a catastrophe or both for it to be revealed to them and to others. I suppose it makes for an unusual love story, one that never really happens in real time, one where possession is out of the question—and yet it is a love story that has the power to drive every event in the book directly or indirectly.

What is next for you? Do you anticipate both practicing medicine and writing fiction and nonfiction in the future? Anything in the works right now?
As to what is next: I have a collection of short stories, most of them published in various magazines, but a few that are yet to come. But after a little break, I'd love to embark on the next novel. I learned invaluable lessons about form, structure, stamina, and pacing in the course of writing this one—painful lessons that should not go to waste. I've also been steadily doing shorter things, op-ed pieces for the Wall Street Journal and the New York Times Magazine all through the years I wrote the novel. I'd like to do that more regularly.

I'd like to practice medicine till my last breath without actually collapsing on the patient—that would be bad form. I hope my mind and body will allow this. Being a physician is central to my life, truly my refuge, and so I don't think I can give it up. If it's a calling, then you can't be a dilettante and wander off because you think something else calls. My writing emanates from a very personal stance which in my case is wrapped up in the privilege of practicing medicine. I recognize that I have a worldview colored by that fact. Still, what I think matters most is the words on the page, not the credentials or vocation of the writer.

Unless otherwise stated, this interview was conducted at the time the book was first published, and is reproduced with permission of the publisher. This interview may not be reproduced or reprinted without permission in writing from the copyright holder.

Membership Advantages
  • Reviews
  • "Beyond the Book" articles
  • Free books to read and review (US only)
  • Find books by time period, setting & theme
  • Read-alike suggestions by book and author
  • Book club discussions
  • and much more!
  • Just $60 for 12 months or $20 for 3 months.
  • More about membership!

Books by this Author

Books by Abraham Verghese at BookBrowse
The Covenant of Water jacket Cutting For Stone jacket The Tennis Partner jacket My Own Country jacket
Membership Advantages
  • Reviews
  • "Beyond the Book" articles
  • Free books to read and review (US only)
  • Find books by time period, setting & theme
  • Read-alike suggestions by book and author
  • Book club discussions
  • and much more!
  • Just $60 for 12 months or $20 for 3 months.
  • More about membership!

Read-Alikes

All the books below are recommended as read-alikes for Abraham Verghese but some maybe more relevant to you than others depending on which books by the author you have read and enjoyed. So look for the suggested read-alikes by title linked on the right.
How we choose readalikes

  • Amy Bloom

    Amy Bloom

    Amy Bloom is the author of four novels: White Houses, Lucky Us, Away, and Love Invents Us; and three collections of short stories: Where the God Of Love Hangs Out, Come to Me (finalist for the National Book Award), and A ... (more)

    If you enjoyed:
    Cutting For Stone

    Try:
    Away
    by Amy Bloom

  • John Colman Wood

    John Colman Wood

    John Colman Wood teaches at the University of North Carolina at Asheville. His field research with Gabra nomads of northern Kenya and southern Ethiopia has been funded by the Wenner-Gren Foundation, the National Geographic ... (more)

    If you enjoyed:
    Cutting For Stone

    Try:
    The Names of Things
    by John Colman Wood

We recommend 18 similar authors


Non-members can see 2 results. Become a member
Membership Advantages
  • Reviews
  • "Beyond the Book" articles
  • Free books to read and review (US only)
  • Find books by time period, setting & theme
  • Read-alike suggestions by book and author
  • Book club discussions
  • and much more!
  • Just $60 for 12 months or $20 for 3 months.
  • More about membership!

BookBrowse Book Club

Book Jacket
The Cover Girl
by Amy Rossi
Find them early enough, and they will always be her girls.

Members Recommend

  • Book Jacket
    The Sister's Curse
    by Nicola Solvinic
  • Book Jacket
    The Lost Story of Eva Fuentes
    by Chanel Cleeton
    A mysterious book links three women across generations in this novel by New York Times bestselling author Chanel Cleeton.
  • Book Jacket
    The Vanishing Place
    by Zoë Rankin
Who Said...

Wisdom is the reward you get for a lifetime of listening when you'd rather have been talking

Click Here to find out who said this, as well as discovering other famous literary quotes!

Book
Trivia
  • Book Trivia

    Can you name the title?

    Test your book knowledge with our daily trivia challenge!

Wordplay

Solve this clue:

W the C A the M W P

and be entered to win..

Your guide toexceptional          books

BookBrowse seeks out and recommends the best in contemporary fiction and nonfiction—books that not only engage and entertain but also deepen our understanding of ourselves and the world around us.

 


Debugging Information
ColdFusion Server Developer 2021,0,13,330286
Template /author_interviews/full/index.cfm
Time Stamp 01-Jun-26 05:19 AM
Locale en
User Agent Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Remote IP 127.0.0.1
Host Name 127.0.0.1


Execution Time

Total Time Avg Time Count Template
1780291179353 ms 1.78029117935E+012 ms 1 /root/website/app_server.cfm
347 ms 347 ms 1 /root/website/author_interviews/full/index.cfm
108 ms 108 ms 1 /root/website/author_interviews/full/dsp_main.cfm
93 ms 93 ms 1 /root/website/app_layout.cfm
88 ms 88 ms 1 /root/website/app_globals.cfm
62 ms 62 ms 1 /root/website/site/blocks/layout/dsp_right_column.cfm
48 ms 16 ms 3 /root/website/adsystem/adsystem_mod.cfm
41 ms 21 ms 2 /root/website/queries/qry_get_books_by_author_id.cfm
39 ms 39 ms 1 /root/website/site/blocks/dsp_border_first_impressions.cfm
25 ms 25 ms 1 /root/website/adzones/AdZone2.cfm
24 ms 24 ms 1 /root/website/queries/qry_get_current_competition.cfm
23 ms 8 ms 3 /root/website/site/blocks/membership_advantages.cfm
21 ms 21 ms 1 /root/website/queries/qry_get_active_obc.cfm
17 ms 6 ms 3 /root/website/queries/qry_get_member_account_types.cfm
16 ms 16 ms 1 /root/website/queries/qry_get_bb_briefs_by_author.cfm
15 ms 15 ms 1 /root/website/adzones/AdZone6.cfm
15 ms 15 ms 1 /root/website/queries/qry_get_current_wordplay.cfm
14 ms 14 ms 1 /root/website/queries/qry_get_arcs_for_ad.cfm
12 ms 12 ms 1 /root/website/queries/qry_get_books_by_author_id_lite.cfm
10 ms 10 ms 1 /root/website/site/blocks/layout/dsp_footer.cfm
8 ms 8 ms 1 /root/website/adzones/showcase_track.cfm
8 ms 8 ms 1 /root/website/queries/qry_get_all_books_by_author_id.cfm
5 ms 1 ms 4 /root/website/actions/act_spider_tracker.cfm
5 ms 5 ms 1 /root/website/site/blocks/dsp_book_giveaway.cfm
4 ms 4 ms 1 /root/website/queries/qry_get_author_readalikes_by_id.cfm
3 ms 3 ms 1 /root/website/act_check_login.cfm
3 ms 3 ms 1 /root/website/act_libraryIPLogin.cfm
3 ms 3 ms 1 /root/website/actions/adstatus.cfm
3 ms 3 ms 1 /root/website/queries/qry_get_member_info.cfm
2 ms 2 ms 1 /root/website/queries/qry_get_previous_arcs_for_ad.cfm
2 ms 2 ms 1 /root/website/site/blocks/layout/dsp_header.cfm
1 ms 1 ms 1 /root/website/queries/qry_get_current_ezine.cfm
1 ms 1 ms 1 /root/website/queries/qry_get_free_newsletters.cfm
1 ms 1 ms 1 /root/website/site/blocks/dsp_border_booktalk.cfm
1 ms 1 ms 1 /root/website/site/blocks/layout/dsp_bottom_block.cfm
1 ms 1 ms 1 /root/website/site/blocks/layout/head.cfm
0 ms 0 ms 1 /root/website/Application.cfm
0 ms 0 ms 1 /root/website/actions/udfs.cfm
0 ms 0 ms 1 /root/website/banners/ad_594.cfm
0 ms 0 ms 1 /root/website/formurl2attributes.cfm
0 ms 0 ms 1 /root/website/js/fbjavascriptsdk.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_header_newsletter.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_top_author_block.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_wordplay.cfm
0 ms 0 ms 1 /root/website/site/blocks/email_modal.cfm
0 ms 0 ms 1 /root/website/site/blocks/layout/google_tags.cfm
0 ms 0 ms 1 /root/website/site/blocks/layout/header_announcement.cfm
0 ms 0 ms 1 /root/website/site/blocks/layout/main_menu.cfm
0 ms 0 ms 1 /root/website/site/blocks/layout/main_search.cfm
2 ms  STARTUP, PARSING, COMPILING, LOADING, & SHUTDOWN
349 ms  TOTAL EXECUTION TIME
red = over 250 ms average execution time


SQL Queries

spidercheck (Datasource=bookbrowse_com_new, Time=4ms, Records=1) in /root/website/actions/act_spider_tracker.cfm @ 05:19:39.039
SELECT	a.bot_number
        FROM	bots a
        WHERE	charindex(a.bot_name, ?) > 0
		OR a.bot_ip = ?
Query Parameter Value(s) -
Parameter #1(cf_sql_varchar) = Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Parameter #2(cf_sql_varchar) = 127.0.0.1

get_member_info (Datasource=bookbrowse_com_new, Time=2ms, Records=0) in /root/website/queries/qry_get_member_info.cfm @ 05:19:39.039
select 	a.*, 
    		b.member_account_type_name, b.member_account_type_charge, b.member_account_type_charge_frequency,  b.member_account_type_months, 
            c.member_chargetype_name, c.member_chargetype_number, a.member_classification_number, a.member_book_format
	
    from members a, member_account_types b, member_chargetype c
	
    where a.member_account_type_number = b.member_account_type_number
	and a.payment_method_id = c.member_chargetype_number
	and a.member_number = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 0

adactive (Datasource=bookbrowse_com_new, Time=2ms, Records=2) in /root/website/actions/adstatus.cfm @ 05:19:39.039
SELECT	viewby, section
    FROM	adsystem 
    WHERE	active  = 1 
    AND		start_date <= GETDATE()
    AND 	(viewby = ? OR viewby = 'all')
Query Parameter Value(s) -
Parameter #1(CF_SQL_VARCHAR) = non

get_current_ezine (Datasource=bookbrowse_com_new, Time=0ms, Records=1, Cached Query) in /root/website/queries/qry_get_current_ezine.cfm @ 05:19:39.039
select		top 1 ezine_number, ezine_dt, ezine_image, ezine_brief_description, ezine_introduction
from		ezines
where		ezine_active_flag = 1
and 		ezine_type_number = 4
and			ezine_dt < getdate()
order by 	ezine_dt DESC
get_current_wordplay (Datasource=bookbrowse_com_new, Time=11ms, Records=1) in /root/website/queries/qry_get_current_wordplay.cfm @ 05:19:39.039
SELECT		a.wordplay_number, a.wordplay_dt, a.wordplay_name, a.wordplay_intro_text, b.wordplay_puzzle_number, b.wordplay_puzzle_question
    FROM		wordplays a 
	INNER JOIN	wordplay_puzzle_mapping c on c.wordplay_number = a.wordplay_number
	INNER JOIN	wordplay_puzzles b on b.wordplay_puzzle_number = c.wordplay_puzzle_number
	WHERE		a.wordplay_number = (	select top 1 a.wordplay_number
                                from wordplays a, wordplay_puzzles b, wordplay_puzzle_mapping c
                                where a.wordplay_number = c.wordplay_number
                                and b.wordplay_puzzle_number = c.wordplay_puzzle_number
                                and a.wordplay_dt < getdate()
                                and a.wordplay_expiration_dt > dateadd(day, -1, getdate())
                                order by a.wordplay_dt asc
                                )
get_ComNo (Datasource=bookbrowse_com_new, Time=13ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 05:19:39.039
SELECT 	TOP 1 	x.competition_number, x.bb_briefs_flag
	from			competitions x
	
		WHERE	x.competition_dt <= getdate()
		AND		x.competition_expiration_dt > dateadd(d,-1,getdate())
get_current_competition (Datasource=bookbrowse_com_new, Time=3ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 05:19:39.039
SELECT 	x.competition_number, x.book_number, x.competition_teaser_title, x.competition_teaser_description, x.competition_intro_text, x.competition_expiration_dt, x.bb_briefs_flag, x.competition_full_info_flag, x.competition_type, x.competition_optin,x.competition_optin_text, 
				a.book_title as "title",
				(b.author_first_name + ' ' +  b.author_middle_initial + ' ' + b.author_last_name) as "author",
	            f.edition_publish_dt AS "hardcover_publish_dt", f.edition_jacket_image as "hardcover_jacket_image",
				g.edition_publish_dt AS "paperback_publish_dt", g.edition_jacket_image as "paperback_jacket_image"
	
		FROM 		competitions x
		INNER JOIN	books a on a.book_number = x.book_number
		INNER JOIN	book_author_mapping c on c.book_number = x.book_number
		INNER JOIN	authors b on c.author_number = b.author_number
		LEFT JOIN	editions f on a.book_number = f.book_number and f.edition_paperback_flag = 0
		LEFT JOIN	editions g on a.book_number = g.book_number and g.edition_paperback_flag = 1

		WHERE		x.competition_number = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 0

get_previous_arcs_for_ad (Datasource=bookbrowse_com_new, Time=0ms, Records=0, Cached Query) in /root/website/queries/qry_get_previous_arcs_for_ad.cfm @ 05:19:39.039
SELECT 	a.arc_number,a.arc_client_url,a.arc_active_dt, a.arc_off_ad_dt,
		b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_publisher, 
		b.ezine_preview_publish_dt, b.ezine_preview_jacket_desc, b.ezine_preview_number_of_pages, b.ezine_preview_bb_comments, b.ezine_preview_isbn13,
		c.ezine_preview_category_name AS "ezine_preview_category",
		(select count(*) from arc_allocator d where d.arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) as "reviews",
		(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,0))) AS numeric(12,0)))+
				(CASE WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 25 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 50 THEN 0.5
				 WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 50 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 75 THEN -0.5
				 ELSE 0
				 END)
 			from arc_allocator	where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS arcrating,
 			(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,1))) AS numeric(12,1)))from arc_allocator where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS "decrating"

FROM arcs a
INNER JOIN ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
INNER JOIN ezine_preview_categories c ON b.ezine_preview_category_number = c.ezine_preview_category_number

WHERE arc_closed_flag = 1
AND arc_obc_flag = 0
AND getdate() >= arc_on_ad_dt
AND getdate() < arc_off_ad_dt

ORDER BY a.arc_on_ad_dt DESC
get_future_obc (Datasource=bookbrowse_com_new, Time=9ms, Records=0) in /root/website/queries/qry_get_active_obc.cfm @ 05:19:39.039
SELECT 		a.arc_forumidfk, a.discourse_flag, a.arc_promo_text, arc_on_ad_dt,
				b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_jacket_desc, b.ezine_preview_publisher, ezine_preview_publish_dt, ezine_preview_number_of_pages, ezine_preview_isbn, ezine_preview_short_summary,
	            b.ezine_preview_bb_author_link, ezine_preview_bb_link
	
	FROM 		arcs a
	INNER JOIN 	ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
	
	WHERE 		arc_obc_flag = 1

	AND 		getdate() < arc_on_ad_dt
	
		ORDER BY  	NEWID()
get_active_obc (Datasource=bookbrowse_com_new, Time=5ms, Records=1) in /root/website/queries/qry_get_active_obc.cfm @ 05:19:39.039
SELECT 		a.arc_forumidfk, a.discourse_flag, a.arc_promo_text,
				b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_jacket_desc, b.ezine_preview_publisher, ezine_preview_publish_dt, ezine_preview_number_of_pages,  ezine_preview_isbn, ezine_preview_short_summary,
	            b.ezine_preview_bb_author_link, ezine_preview_bb_link,
	            c.book_reading_guide
	
	FROM 		arcs a
	INNER JOIN 	ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
	LEFT JOIN  	books c on c.book_number = b.ezine_preview_bb_link
	
	WHERE 		a.arc_obc_flag = 1
	AND			a.arc_active_flag = 0
	AND 		arc_closed_flag = 1
	AND 		getdate() >= arc_on_ad_dt
	AND 		getdate() < arc_off_ad_dt
	ORDER BY  	NEWID()
get_recent_obc (Datasource=bookbrowse_com_new, Time=6ms, Records=4) in /root/website/queries/qry_get_active_obc.cfm @ 05:19:39.039
SELECT 		a.arc_forumidfk, a.discourse_flag, a.arc_promo_text,
				b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_jacket_desc, b.ezine_preview_publisher, ezine_preview_publish_dt, ezine_preview_number_of_pages,  ezine_preview_isbn, ezine_preview_short_summary,
	            b.ezine_preview_bb_author_link, ezine_preview_bb_link,
	            c.book_reading_guide
	
	FROM 		arcs a
	INNER JOIN 	ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
	LEFT JOIN  	books c on c.book_number = b.ezine_preview_bb_link
	
	WHERE a.arc_number IN (select top 4 arc_number
							from		arcs
							WHERE 		arc_obc_flag = 1
							AND			arc_active_flag = 0
							AND 		arc_closed_flag = 1
							AND 		getdate() > arc_off_ad_dt
							ORDER BY	arc_on_ad_dt DESC)
	ORDER BY  	NEWID()
get_books_by_author_id (Datasource=bookbrowse_com_new, Time=5ms, Records=2) in /root/website/queries/qry_get_books_by_author_id_lite.cfm @ 05:19:39.039
select	a.book_number, a.book_title, a.book_sub_title, book_short_summary,
				(CASE WHEN f.edition_publish_dt < g.edition_publish_dt OR g.edition_publish_dt IS NULL THEN f.edition_publish_dt
                      ELSE g.edition_publish_dt 
                      END) "publish_dt"
		
        from 	books a
		inner join book_author_mapping e ON e.book_number = a.book_number
        inner join authors d ON d.author_number = e.author_number
        left outer join editions f ON a.book_number = f.book_number and f.edition_paperback_flag = 0 
   		left outer join editions g ON a.book_number = g.book_number and g.edition_paperback_flag = 1 
		
       	where 	d.author_number = ?
        and 	a.book_number IN (	select	distinct b.book_number 
        							from	categories a, category_book_mapping b 
                                    where 	a.category_number = b.category_number 
                                    and 	a.category_active_flag = 1)

		order by publish_dt DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 1637

get_author_by_author_id (Datasource=bookbrowse_com_new, Time=6ms, Records=1) in /root/website/queries/qry_get_books_by_author_id_lite.cfm @ 05:19:39.039
select	d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, d.author_pronunciation,
				i.author_info_number, i.author_number, i.author_info_image, i.author_info_entry_dt,
                i.author_info_url, i.author_info_interview_summary, i.author_info_interview, i.author_info_biography, i.author_info_copyright_info
                		
        from 	authors d, author_info i
		
        where 	d.author_number = ?
        and 	d.author_number = i.author_number
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 1637

get_all_books_by_author_id (Datasource=bookbrowse_com_new, Time=8ms, Records=4) in /root/website/queries/qry_get_all_books_by_author_id.cfm @ 05:19:39.039
select	a.book_number, 
        		'' AS ezine_preview_number,
                a.book_title, 
                a.book_sub_title, 
				(CASE WHEN f.edition_publish_dt < g.edition_publish_dt OR g.edition_publish_dt IS NULL THEN f.edition_publish_dt
                      ELSE g.edition_publish_dt 
                      END) "publish_dt",
                '' as "jacket"
		
        from 	books a
		inner join book_author_mapping e ON e.book_number = a.book_number
        inner join authors d ON d.author_number = e.author_number
		left outer join editions f ON a.book_number = f.book_number and f.edition_paperback_flag = 0
		left outer join editions g ON a.book_number = g.book_number and g.edition_paperback_flag = 1
		
        where 	d.author_number = ?
        and 	a.book_number IN (	select	distinct b.book_number 
        							from	categories a, category_book_mapping b 
                                    where 	a.category_number = b.category_number 
                                    and 	a.category_active_flag = 1)        
        UNION

		select	'' AS book_number,
        		ezine_preview_number, 
				ezine_preview_title AS "book_title", 
				ezine_preview_subtitle AS "book_sub_title",
                ezine_preview_publish_dt AS "publish_dt",
                ezine_preview_jacket_image as "jacket"
		
        from 	ezine_previews
		
        where 	ezine_preview_bb_author_link = ?
        and		ezine_preview_bb_link < 1
        
        order by publish_dt DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 1637
Parameter #2(CF_SQL_INTEGER) = 1637

get_bb_briefs_by_author (Datasource=bookbrowse_com_new, Time=12ms, Records=2) in /root/website/queries/qry_get_bb_briefs_by_author.cfm @ 05:19:39.039
select	ezine_preview_number, 
				ezine_preview_title, 
				ezine_preview_subtitle,
                ezine_preview_publish_dt ,
                ezine_preview_jacket_image
		
        from 	ezine_previews
		
        where 	ezine_preview_bb_author_link = ?
        and		(ezine_preview_bb_link IS NULL
				 or ezine_preview_bb_link < 1)
        and		ezine_number > 0
        
		order by ezine_preview_publish_dt DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 1637

get_author_readalikes_by_id (Datasource=bookbrowse_com_new, Time=3ms, Records=18) in /root/website/queries/qry_get_author_readalikes_by_id.cfm @ 05:19:39.039
SELECT		a.author_number,
			CASE	WHEN datalength(a.author_middle_initial) > 0 
					THEN a.author_first_name + ' ' + a.author_middle_initial + ' ' + a.author_last_name
					ELSE a.author_first_name + ' ' + a.author_last_name
					END AS "author_full_name",
			b.book_number, 
			f.book_title as "book",

			CASE	WHEN datalength(e.author_middle_initial) > 0 
					THEN e.author_first_name + ' ' + e.author_middle_initial + ' ' + e.author_last_name
					ELSE e.author_first_name + ' ' + e.author_last_name
					END AS "liked_author_full_name",
			e.author_number as "liked_author_number", 
			g.book_title as "liked_book",
			c.liked_book_number as "liked_book_number" 

FROM		authors a
INNER JOIN	book_author_mapping b ON b.author_number = a.author_number
INNER JOIN	liked c ON c.book_number = b.book_number
INNER JOIN	book_author_mapping d ON d.book_number = c.liked_book_number
INNER JOIN	authors e ON e.author_number = d.author_number
INNER JOIN	books f on f.book_number = b.book_number
INNER JOIN	books g on g.book_number = c.liked_book_number

WHERE		a.author_number = ?

ORDER BY 	e.author_last_name, e.author_first_name
Query Parameter Value(s) -
Parameter #1(cf_sql_integer) = 1637

get_ads (Datasource=bookbrowse_com_new, Time=3ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 05:19:39.039
SELECT		a.adid,	adweight
	FROM		adsystem a
	INNER JOIN 	ad_category_mapping b ON b.adid = a.adid
	WHERE		a.section = ?
	AND			a.active  = 1
	AND 		a.start_date <= GETDATE()
	
	AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
            

	AND     (b.category_number IN (	SELECT	category_number
									FROM	category_book_mapping
									WHERE	book_number = ?)
      		OR 	b.category_number = ?)
Query Parameter Value(s) -
Parameter #1(CF_SQL_VARCHAR) = adzone2
Parameter #2(CF_SQL_VARCHAR) = 0
Parameter #3(CF_SQL_VARCHAR) = 0

get_ads (Datasource=bookbrowse_com_new, Time=3ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 05:19:39.039
SELECT	a.adid,	adweight
        FROM	adsystem a
        WHERE	a.section = ? 
        AND 	a.active  = 1 
        AND		a.start_date <= GETDATE()	
        
        AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
        AND (select count(*) from ad_category_mapping where datalength(category_number) >= 1 and adid = a.adid) = 0
Query Parameter Value(s) -
Parameter #1(CF_SQL_VARCHAR) = adzone2

get_member_account_types (Datasource=bookbrowse_com_new, Time=6ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 05:19:39.039
select member_account_type_number, member_account_type_name, member_account_type_charge, member_account_type_charge_frequency, member_account_type_postscript, member_account_type_months, member_account_type_stripe_lookup_key
from member_account_types
where member_account_type_number = (select top 1 member_account_type_number
									from member_account_types
									where member_account_type_months = 12
									and member_account_type_public = 1
									order by member_account_type_charge ASC)
									
or member_account_type_number =		(select top 1 member_account_type_number
									from member_account_types
									where member_account_type_months = 3
									and member_account_type_public = 1
									order by member_account_type_charge ASC)
									
order by member_account_type_sort_order ASC
get_book_image (Datasource=bookbrowse_com_new, Time=6ms, Records=1) in /root/website/actions/udfs.cfm @ 05:19:39.039
select 	f.edition_publish_dt "hardcover_publish_dt", f.edition_jacket_image "hardcover_jacket_image", 
            g.edition_publish_dt "paperback_publish_dt", g.edition_jacket_image "paperback_jacket_image"
    
    from   	books a
	left join editions f on a.book_number = f.book_number and f.edition_paperback_flag = 0
	left join editions g on a.book_number = g.book_number and g.edition_paperback_flag = 1
                    
    where 	a.book_number = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4614

get_book_image (Datasource=bookbrowse_com_new, Time=4ms, Records=1) in /root/website/actions/udfs.cfm @ 05:19:39.039
select 	f.edition_publish_dt "hardcover_publish_dt", f.edition_jacket_image "hardcover_jacket_image", 
            g.edition_publish_dt "paperback_publish_dt", g.edition_jacket_image "paperback_jacket_image"
    
    from   	books a
	left join editions f on a.book_number = f.book_number and f.edition_paperback_flag = 0
	left join editions g on a.book_number = g.book_number and g.edition_paperback_flag = 1
                    
    where 	a.book_number = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 2203

get_member_account_types (Datasource=bookbrowse_com_new, Time=5ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 05:19:39.039
select member_account_type_number, member_account_type_name, member_account_type_charge, member_account_type_charge_frequency, member_account_type_postscript, member_account_type_months, member_account_type_stripe_lookup_key
from member_account_types
where member_account_type_number = (select top 1 member_account_type_number
									from member_account_types
									where member_account_type_months = 12
									and member_account_type_public = 1
									order by member_account_type_charge ASC)
									
or member_account_type_number =		(select top 1 member_account_type_number
									from member_account_types
									where member_account_type_months = 3
									and member_account_type_public = 1
									order by member_account_type_charge ASC)
									
order by member_account_type_sort_order ASC
get_books_by_author_id (Datasource=bookbrowse_com_new, Time=2ms, Records=4) in /root/website/queries/qry_get_books_by_author_id.cfm @ 05:19:39.039
select	a.book_number, 
				a.book_title, 
				(CASE WHEN UPPER(LEFT(a.book_title, 2)) = 'A ' THEN SUBSTRING(a.book_title, 3, len(a.book_title) - 2) WHEN UPPER(LEFT(a.book_title, 3)) = 'AN ' THEN SUBSTRING(a.book_title, 4, len(a.book_title) - 3) WHEN UPPER(LEFT(a.book_title, 4)) = 'THE ' THEN SUBSTRING(a.book_title, 5, len(a.book_title) - 4) ELSE a.book_title END) "sort_book_title", 
				a.book_sub_title, 
				a.book_entry_dt, 
				a.book_short_summary, 
				a.book_jacket_info, 
                a.book_excerpt, 
                a.book_reading_guide,
				d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, 
				f.edition_publish_dt "hardcover_publish_dt", f.edition_number_of_pages "hardcover_number_of_pages", f.edition_isbn "hardcover_isbn", f.edition_isbn13 "hardcover_isbn13",f.edition_jacket_image "hardcover_jacket_image",
				g.edition_publish_dt "paperback_publish_dt", g.edition_number_of_pages "paperback_number_of_pages", g.edition_isbn "paperback_isbn", g.edition_isbn13 "paperback_isbn13",g.edition_jacket_image "paperback_jacket_image",
				i.author_info_biography, i.author_info_interview, i.author_info_image, i.author_info_url,
                (select count(c.book_number) as "author_bookcount" from book_author_mapping c where c.author_number = ?) + (select count(e.ezine_preview_number) as "author_bookcount" from ezine_previews e where e.ezine_preview_bb_author_link = ?) as "authorbookcount"
                
		    from books a
            inner join book_author_mapping e ON a.book_number = e.book_number
            inner join authors d ON e.author_number = d.author_number
            inner join author_info i ON d.author_number = i.author_number
            left outer join editions f ON a.book_number = f.book_number and f.edition_paperback_flag = 0
            left outer join editions g ON a.book_number = g.book_number and g.edition_paperback_flag = 1
                        
            where e.author_number = ?
            and a.book_number IN (select distinct b.book_number from categories a, category_book_mapping b where a.category_number = b.category_number and a.category_active_flag = 1)
			
            order by sort_book_title
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 463
Parameter #2(CF_SQL_INTEGER) = 463
Parameter #3(CF_SQL_INTEGER) = 463

get_author_by_author_id (Datasource=bookbrowse_com_new, Time=7ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 05:19:39.039
select	d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, d.author_pronunciation,
                CASE	WHEN datalength(d.author_middle_initial) > 0 
                        THEN d.author_first_name + ' ' + d.author_middle_initial + ' ' + d.author_last_name
                        ELSE d.author_first_name + ' ' + d.author_last_name
                        END AS "author_full_name",
				i.author_info_number, i.author_number, i.author_info_image, i.author_info_entry_dt,
                i.author_info_url, i.author_info_interview_summary, i.author_info_interview, i.author_info_biography, i.author_info_copyright_info
                		
        from 	authors d, author_info i
		
        where 	d.author_number = ?
        and 	d.author_number = i.author_number
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 463

get_books_by_author_id (Datasource=bookbrowse_com_new, Time=24ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 05:19:39.039
select	a.book_number, 
				a.book_title, 
				(CASE WHEN UPPER(LEFT(a.book_title, 2)) = 'A ' THEN SUBSTRING(a.book_title, 3, len(a.book_title) - 2) WHEN UPPER(LEFT(a.book_title, 3)) = 'AN ' THEN SUBSTRING(a.book_title, 4, len(a.book_title) - 3) WHEN UPPER(LEFT(a.book_title, 4)) = 'THE ' THEN SUBSTRING(a.book_title, 5, len(a.book_title) - 4) ELSE a.book_title END) "sort_book_title", 
				a.book_sub_title, 
				a.book_entry_dt, 
				a.book_short_summary, 
				a.book_jacket_info, 
                a.book_excerpt, 
                a.book_reading_guide,
				d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, 
				f.edition_publish_dt "hardcover_publish_dt", f.edition_number_of_pages "hardcover_number_of_pages", f.edition_isbn "hardcover_isbn", f.edition_isbn13 "hardcover_isbn13",f.edition_jacket_image "hardcover_jacket_image",
				g.edition_publish_dt "paperback_publish_dt", g.edition_number_of_pages "paperback_number_of_pages", g.edition_isbn "paperback_isbn", g.edition_isbn13 "paperback_isbn13",g.edition_jacket_image "paperback_jacket_image",
				i.author_info_biography, i.author_info_interview, i.author_info_image, i.author_info_url,
                (select count(c.book_number) as "author_bookcount" from book_author_mapping c where c.author_number = ?) + (select count(e.ezine_preview_number) as "author_bookcount" from ezine_previews e where e.ezine_preview_bb_author_link = ?) as "authorbookcount"
                
		    from books a
            inner join book_author_mapping e ON a.book_number = e.book_number
            inner join authors d ON e.author_number = d.author_number
            inner join author_info i ON d.author_number = i.author_number
            left outer join editions f ON a.book_number = f.book_number and f.edition_paperback_flag = 0
            left outer join editions g ON a.book_number = g.book_number and g.edition_paperback_flag = 1
                        
            where e.author_number = ?
            and a.book_number IN (select distinct b.book_number from categories a, category_book_mapping b where a.category_number = b.category_number and a.category_active_flag = 1)
			
            order by sort_book_title
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 2184
Parameter #2(CF_SQL_INTEGER) = 2184
Parameter #3(CF_SQL_INTEGER) = 2184

get_author_by_author_id (Datasource=bookbrowse_com_new, Time=6ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 05:19:39.039
select	d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, d.author_pronunciation,
                CASE	WHEN datalength(d.author_middle_initial) > 0 
                        THEN d.author_first_name + ' ' + d.author_middle_initial + ' ' + d.author_last_name
                        ELSE d.author_first_name + ' ' + d.author_last_name
                        END AS "author_full_name",
				i.author_info_number, i.author_number, i.author_info_image, i.author_info_entry_dt,
                i.author_info_url, i.author_info_interview_summary, i.author_info_interview, i.author_info_biography, i.author_info_copyright_info
                		
        from 	authors d, author_info i
		
        where 	d.author_number = ?
        and 	d.author_number = i.author_number
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 2184

get_member_account_types (Datasource=bookbrowse_com_new, Time=3ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 05:19:39.039
select member_account_type_number, member_account_type_name, member_account_type_charge, member_account_type_charge_frequency, member_account_type_postscript, member_account_type_months, member_account_type_stripe_lookup_key
from member_account_types
where member_account_type_number = (select top 1 member_account_type_number
									from member_account_types
									where member_account_type_months = 12
									and member_account_type_public = 1
									order by member_account_type_charge ASC)
									
or member_account_type_number =		(select top 1 member_account_type_number
									from member_account_types
									where member_account_type_months = 3
									and member_account_type_public = 1
									order by member_account_type_charge ASC)
									
order by member_account_type_sort_order ASC
get_arcs_for_ad (Datasource=bookbrowse_com_new, Time=3ms, Records=0) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 05:19:39.039
SELECT 	top 10 a.arc_number,arc_promo_text,
		b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_publish_dt, 
		(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,0))) AS numeric(12,0)))+
				(CASE WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 25 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 50 THEN 0.5
				 WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 50 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 75 THEN -0.5
				 ELSE 0
				 END)
 			from arc_allocator	where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS arcrating

FROM arcs a
INNER JOIN ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number

WHERE arc_closed_flag = 1
AND arc_obc_flag = 0
AND getdate() >= arc_on_ad_dt
AND (select count(*) from arc_allocator d where d.arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) > 1
and getdate() <= dateadd(day,1,a.arc_off_ad_dt)

ORDER BY NEWID()
get_arcs_for_ad (Datasource=bookbrowse_com_new, Time=10ms, Records=3) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 05:19:39.039
SELECT 	top 3 a.arc_number,arc_promo_text,
			b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_publish_dt, 
			(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,0))) AS numeric(12,0)))+
					(CASE WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 25 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 50 THEN 0.5
					 WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 50 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 75 THEN -0.5
					 ELSE 0
					 END)
				from arc_allocator	where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS arcrating

	FROM arcs a
	INNER JOIN ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number

	WHERE arc_closed_flag = 1
	AND arc_obc_flag = 0
	AND getdate() >= arc_on_ad_dt
	AND (select count(*) from arc_allocator d where d.arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) > 1

	ORDER BY a.arc_off_ad_dt DESC
get_ads (Datasource=bookbrowse_com_new, Time=8ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 05:19:39.039
SELECT		a.adid,	adweight
	FROM		adsystem a
	INNER JOIN 	ad_category_mapping b ON b.adid = a.adid
	WHERE		a.section = ?
	AND			a.active  = 1
	AND 		a.start_date <= GETDATE()
	
	AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
            

	AND     (b.category_number IN (	SELECT	category_number
									FROM	category_book_mapping
									WHERE	book_number = ?)
      		OR 	b.category_number = ?)
Query Parameter Value(s) -
Parameter #1(CF_SQL_VARCHAR) = adzone6
Parameter #2(CF_SQL_VARCHAR) = 0
Parameter #3(CF_SQL_VARCHAR) = 0

get_ads (Datasource=bookbrowse_com_new, Time=3ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 05:19:39.039
SELECT	a.adid,	adweight
        FROM	adsystem a
        WHERE	a.section = ? 
        AND 	a.active  = 1 
        AND		a.start_date <= GETDATE()	
        
        AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
        AND (select count(*) from ad_category_mapping where datalength(category_number) >= 1 and adid = a.adid) = 0
Query Parameter Value(s) -
Parameter #1(CF_SQL_VARCHAR) = adzone6

get_type (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 05:19:39.039
SELECT	a.start_date, a.adid, a.end_date, a.camp_views, a.image_name, a.alt_text, a.views, a.code, a.adsize
        FROM	adsystem a
        WHERE	a.adid = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 1112

get_quotes (Datasource=bookbrowse_com_new, Time=4ms, Records=1) in /root/website/site/blocks/dsp_book_giveaway.cfm @ 05:19:39.039
select top 1 ezine_number, ezine_quote, ezine_quote_title
	    from ezines
	    where len(ezine_quote_title) > 1
	    order by newid()
get_free_newsletters (Datasource=bookbrowse_com_new, Time=0ms, Records=4, Cached Query) in /root/website/queries/qry_get_free_newsletters.cfm @ 05:19:39.039
SELECT 	*
    FROM 	free_newsletters
get_ads (Datasource=bookbrowse_com_new, Time=2ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 05:19:39.039
SELECT		a.adid,	adweight
	FROM		adsystem a
	INNER JOIN 	ad_category_mapping b ON b.adid = a.adid
	WHERE		a.section = ?
	AND			a.active  = 1
	AND 		a.start_date <= GETDATE()
		 	AND a.adid NOT IN (?) 
	AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
            

	AND     (b.category_number IN (	SELECT	category_number
									FROM	category_book_mapping
									WHERE	book_number = ?)
      		OR 	b.category_number = ?)
Query Parameter Value(s) -
Parameter #1(CF_SQL_VARCHAR) = showcase_track
Parameter #2(CF_SQL_INTEGER) = 1112
Parameter #3(CF_SQL_VARCHAR) = 0
Parameter #4(CF_SQL_VARCHAR) = 0

get_ads (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 05:19:39.039
SELECT	a.adid,	adweight
        FROM	adsystem a
        WHERE	a.section = ? 
        AND 	a.active  = 1 
        AND		a.start_date <= GETDATE()	
        		AND a.adid NOT IN (?) 
        AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
        AND (select count(*) from ad_category_mapping where datalength(category_number) >= 1 and adid = a.adid) = 0
Query Parameter Value(s) -
Parameter #1(CF_SQL_VARCHAR) = showcase_track
Parameter #2(CF_SQL_INTEGER) = 1112

get_type (Datasource=bookbrowse_com_new, Time=0ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 05:19:39.039
SELECT	a.start_date, a.adid, a.end_date, a.camp_views, a.image_name, a.alt_text, a.views, a.code, a.adsize
        FROM	adsystem a
        WHERE	a.adid = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 594


Scope Variables

CGI Variables:
AUTH_PASSWORD=
AUTH_TYPE=
AUTH_USER=
CERT_COOKIE=
CERT_FLAGS=
CERT_ISSUER=
CERT_KEYSIZE=
CERT_SECRETKEYSIZE=
CERT_SERIALNUMBER=
CERT_SERVER_ISSUER=
CERT_SERVER_SUBJECT=
CERT_SUBJECT=
CF_TEMPLATE_PATH=/root/website/author_interviews/full/index.cfm
CONTENT_LENGTH=
CONTENT_TYPE=
CONTEXT_PATH=
GATEWAY_INTERFACE=
HTTPS=
HTTPS_KEYSIZE=
HTTPS_SECRETKEYSIZE=
HTTPS_SERVER_ISSUER=
HTTPS_SERVER_SUBJECT=
HTTP_ACCEPT=*/*
HTTP_ACCEPT_ENCODING=gzip, br, zstd, deflate
HTTP_ACCEPT_LANGUAGE=
HTTP_CONNECTION=upgrade
HTTP_COOKIE=CFGLOBALS=urltoken%3DCFID%23%3D4089175%26CFTOKEN%23%3Db0f134a62a7eb6f5%2D10371DC0%2DC9BD%2D1DA1%2D6812CFC4AA0BC683%23lastvisit%3D%7Bts%20%272026%2D06%2D01%2005%3A19%3A39%27%7D%23hitcount%3D207%23timecreated%3D%7Bts%20%272026%2D06%2D01%2005%3A19%3A08%27%7D%23cftoken%3Ddaec4fbfb0c454c0%2D103714DF%2DAAB4%2D9E85%2D844297F0192B251A%23cfid%3D4089173%23; CFCLIENT_BOOKBROWSE=order%3Dp%23member%5Fnumber%3D0%23member%5Factive%5Fflag%3D0%23member%5Flogged%5Fin%5Fflag%3D0%23library%5Fuser%5Fflag%3D0%23view%3Dbooks%23; CFTOKEN=b0f134a62a7eb6f5-10371DC0-C9BD-1DA1-6812CFC4AA0BC683; CFID=4089175; FREEACCESSCOUNT=0
HTTP_HOST=dev.bookbrowse.com
HTTP_REFERER=
HTTP_URL=
HTTP_USER_AGENT=Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
LOCAL_ADDR=127.0.0.1
PATH_INFO=/author_number/1637/abraham-verghese
PATH_TRANSLATED=/root/website/author_interviews/full/index.cfm
QUERY_STRING=
REMOTE_ADDR=127.0.0.1
REMOTE_HOST=127.0.0.1
REMOTE_USER=
REQUEST_METHOD=GET
SCRIPT_NAME=/author_interviews/full/index.cfm
SERVER_NAME=dev.bookbrowse.com
SERVER_PORT=8500
SERVER_PORT_SECURE=0
SERVER_PROTOCOL=HTTP/1.1
SERVER_SOFTWARE=
WEB_SERVER_API=
Client Variables:
cfid=4089173
cftoken=daec4fbfb0c454c0-103714DF-AAB4-9E85-844297F0192B251A
hitcount=210
lastvisit={ts '2026-06-01 05:19:39'}
library_user_flag=0
member_active_flag=0
member_logged_in_flag=0
member_number=0
order=p
timecreated={ts '2026-06-01 05:19:08'}
urltoken=CFID=4089175&CFTOKEN=b0f134a62a7eb6f5-10371DC0-C9BD-1DA1-6812CFC4AA0BC683
view=books
Cookie Variables:
CFCLIENT_BOOKBROWSE=order=p#member_number=0#member_active_flag=0#member_logged_in_flag=0#library_user_flag=0#view=books#
CFGLOBALS=urltoken=CFID#=4089175&CFTOKEN#=b0f134a62a7eb6f5-10371DC0-C9BD-1DA1-6812CFC4AA0BC683#lastvisit={ts '2026-06-01 05:19:39'}#hitcount=207#timecreated={ts '2026-06-01 05:19:08'}#cftoken=daec4fbfb0c454c0-103714DF-AAB4-9E85-844297F0192B251A#cfid=4089173#
CFID=4089175
CFTOKEN=b0f134a62a7eb6f5-10371DC0-C9BD-1DA1-6812CFC4AA0BC683
FREEACCESSCOUNT=0
Session Variables:
cfid=4089175
cftoken=b0f134a62a7eb6f5-10371DC0-C9BD-1DA1-6812CFC4AA0BC683
sessionid=BOOKBROWSE_4089175_b0f134a62a7eb6f5-10371DC0-C9BD-1DA1-6812CFC4AA0BC683
urltoken=CFID=4089175&CFTOKEN=b0f134a62a7eb6f5-10371DC0-C9BD-1DA1-6812CFC4AA0BC683
URL Parameters:
abraham-verghese=
author_number=1637
Debug Rendering Time: 26 ms