Ingrid Hill Interview, plus links to author biography, book summaries, excerpts and reviews

Ingrid Hill

Ingrid Hill

An interview with Ingrid Hill

In this extensive interview Ingrid Hill discusses her book, Ursula, Under, world events, chaos theory and a great deal more besides!

Among its other qualities, Ursula, Under is a tour de force of historical detail. How did you amass the knowledge that enabled you to write so richly of Chinese, Finnish, and immigrant experiences?

When I was left a single mom with eleven children, I had to get a career to support them, so I went back to graduate school to be able to teach literature and writing at the college level. I needed two foreign languages as part of this program, and I was feeling a bit heady with both the impossibility and the necessity of this, so I asked for Swedish first. My father was Swedish-American, a sea captain, and I'd always wanted to study Swedish but never had a chance. As part of my program, I got to study in Sweden, and the Swedish history and culture classes really intrigued me, especially the era of Gustavus Adolphus.

I met my second husband in a writers' group here and we became friends. He went to China for a year to teach English teachers at a university there, and he invited me to visit. I was hooked. I had no explanation for my immediate and unexpected love for China, but in retrospect I think it was the enforced simplicity (which verged over into deprivation) of people's lives there under communism, which led to more intensity of friendships and concern for family rather than for possessions and distractions. I imagine this has changed a lot in fifteen years as China has lurched unevenly toward capitalism. I was moved by their fascination with my large family, which they told me again and again was like the traditional Chinese family, by contrast with which their government mandated a one-child policy that was very unevenly and sometimes horrendously enforced. Then I marveled at the fact that the Cultural Revolution had in a sense—by banning classical literature and art—pretty effectively wiped out their collective cultural memory. Finally, I decided that the ceremonial quality of so much of Chinese life probably felt familiar to me because of my having grown up in Catholicism, as odd as that may seem. It made emotional, visceral sense to me.

Finally, I guess I'm an "immigrant," having moved from New Orleans's unique combination of voodoo Catholicism and party-down Mardi Gras les bon temps rouler (let the good times roll) attitude to a very different Midwestern culture that felt alien and ate less red-beans-and-rice. A sociologist here at the University of Iowa, Jennifer Glass, did a study on immigrant family size and found that in the first generation, immigrants tend to retain the family-size expectations of their homeland, while the second generation, born in the new culture, takes on that culture's model. That's true for my children and me. I have lot of friends from other cultures and have always been interested in their experiences as immigrants. I began thinking about what the nineteenth and early twentieth century immigrants' lives were like and tried to put myself inside them. I do my historical research like a child: books piled all around me, and me absorbing the facts, drawings, photographs, anecdotes, ambiances like a sponge . . . till I can squeeze myself like that sponge and out leaks . . . story.

Ursula, Under expresses Ursula Wong's genealogy as somehow both random and teleological. On the one hand, the novel is constructed on a series of improbable events, yet, on the other hand, none of these events can fail to take place if Ursula is ever to exist at all. Your book seems to happen at the intersection of blind chance and inescapable destiny. By the same token, of course, each one of us is a laughable improbability; the odds against all those particular sperm and eggs coming together were incalculable, and yet, here we are. What are your thoughts about the relationships among randomness, fate, and the things we choose to call miracles?

Chaos science says that in any phenomenon that appears chaotic—say, a weather system—there is in fact an intricate implicate order. I have found that to be true in all kinds of situations that at first seem to make no sense: indeed, there is order, we just have to "dig"—and/or sit patiently—to find it. When Justin tells Annie that he believes that there are two kinds of people in the world, people who like mysteries and people who believe that life itself is a mystery, and he belongs to the latter group, I'm with him. The most intriguing things (people, events, trends) in life have a hidden order and simultaneously pulse with mystery: sometimes they give up their secrets to us and sometimes they don't.

Augustine of Hippo said that a miracle is not contrary to nature, only to what we know of nature, and I like that a lot. I've had enough experiences in my life that are beyond the pale that I'd be a dunderhead not to believe in miracles. By the way, teleology is a word I seldom hear, and this is the first time it's come up in an interview. Kudos to you. I think our culture prefers to lie back and believe simultaneously that life is an uncontrollable juggernaut running us down and flattening us like a Wile E. Coyote cartoon and that, at the same time, we are gods who control our own destinies—or should be. Neither of these positions is subtle or true to experience. I think people who aren't willing to entertain complexity and ambiguity—and suspend judgment in hope of a bigger or subtler or more complex "revelation"—miss a lot of the fun of life. Those people probably think I'm a dodo for not thinking that "winning" a bowl game or a world war is the be-all and end-all. Obviously that's the way I treated wars in the novel: nothing good in 'em, and nothing solved by them. But lots of regular people have been socialized to think that life is binary that way. Win/lose.

Ursula Wong is not merely the meeting point of a number of great individual stories. She is also a symbolic confluence of East and West. What were your thoughts about this coming together when you were working on this novel?

Well, Ursula as a character is a composite of two little faces in photos in my family stash: my daughter Maria, who looks as if she is 100 percent her daddy's, Finnish blue-eyed and blond, and my godchild Tian-Tian, the same age, who is 100 percent Chinese. Her mom is my dear friend since my first trip to China. Those two faces blended in my mind's eye and I thought, wow, what a beautiful child. I thought Ursula would be a great emblem for all the good aspects of the blending of western and Asian cultures. I do think that blending of eastern and western cultures is happening, and not only in good ways. As wealth comes to the third world, so too do aspirations to be "like America" in all the worst ways. Greed comes onstage, families shatter, diversion replaces substance. I think it's a difficult period in history, but, hey, what period wasn't? That's one thing a study of history teaches us.

Your last name, Hill, is a translation of the Finnish word "maki," which enters the novel as Annie's surname. Are there other subtle ways in which you have written yourself into the novel?

Okay, let's be clear that this is not about me but about the process of an author creating a character. And thanks for calling that "subtle," hah. Actually, in the Upper Peninsula of Michigan the names Hill and Maki are as common as can be, take up whole pages in the telephone directories, so it's not so much about us as about the whole Finn-immigrant culture.

Finns were often named after features of the natural landscape, so their surname might signify that they were "from the back hill," "from the judgment hill" (where the civil authority resided), "from the fire hill," "from the church hill" (Kyrkomaki, which would be Churchhill in English). A man in one audience on my first book tour told me that in the UP town where he went to school the guys referred to "dating the local Makis," as if Maki were a generic name for a Finn. I wanted that resonance.

The students I met in my time in China said of their teachers that "a good teacher is like a silkworm, spinning silk out of the very core of his or her being." I think that all good authors do this too. Flaubert said, "Madame Bovary, c'est moi." So when I tell you about parts of me that are in various characters, let's be clear that that observation is about the process, which also operates in other authors, not specifically about me.

Justin was the first character to develop, several years before Ursula came along. I have always had music as a central part of my life, couldn't live without it. Justin's adrenalin scrappiness, c'est moi. That's my Inner Goalie, eh. Annie's need-to-know, all of the trivial facts that add up to reality, i.e., how they get the holes in Lorraine Swiss cheese, and how it's different from SWISS Swiss . . . c'est moi. Mindy Ji's younger hippie self at Woodstock, that's me, but in Berkeley, California; her mature cookie-batter-flinging multitasking self that might not watch the speed limits if she's heading for the scene of Ursula's accident, that's me too. Liz Maki having parades and dancing to "My Sharona," that's me with my kids when they were littler.

As for the historical characters: Qin Lao's sober perseverance and determination to get his experiments right, c'est moi. Kyllikki's early determination not to marry, c'est moi also: I used to think I'd wind up a nun: no, seriously, folks. Olavi's way of attaching a story to every material object: yeah, I plead guilty. Ming Tao's tongue-in-cheek but also unrelenting logic, that's mine, and Josserand's delight in the "earthier exegesis" of his Parisian Protestant mentors, that's mine too—not to mention his resistance to doctrinal foolishness bred of human laws. Violeta's status as an orphan: in some ways that feels like my life, as I was an outsider in my family-of-origin, like a freaking space alien. Chen Bing's looking for "signs" in everything, for Chinese characters flung out in seaweed—that would be yours truly. Alabaster Wong's peculiarity as a "spelling snob," uff da, that's me as well. Oh, yeah, and my name in China, given to me by a communist police chief, was Tian Hu, a name that appears at the end of chapter two.

World literature contains a number of works that might be classified as national epics: the Italians have The Aeneid, the French have The Song of Roland, and so on. Do you think it might be fruitful to think of Ursula, Under as a revision of the epic genre, such that the subject of the epic is no longer the birth of a nation, but the making of an individual?

Oy. The epic, bound up as it is in conquest and force of might, is not my native genre. I studied the Scandinavian and Icelandic and Old English sagas years ago and picked up (and enjoyed) their broody quality, pagan culture, life and death served up like steak tartare. Even in those sagas, though, it is the individual who holds our interest. Nation-building is such a guy thing, come on, and the cobbling-up of national epics is a part of that. The Kalevala is the Finnish "national epic" but it is really a very late creation, a collection of existing folk tales in the oral tradition, put together by Elias Lonnrot in the first half of the nineteenth century. Finland's history—and we see only the tip of it in Ursula, Under—is one of sisu or determination, a culture caught between a rock and a hard place again and again, its "nationhood" a dicey proposition. Rather than seeing Ursula, Under as a revision of the epic genre—very male—I'd like to see it as a female take on culture-building, not reacting against or developing from the dominant model but simply its own way of seeing things. Traditional American history tends to privilege the British element and arrange all other cultures around that, in marginal fashion. I don't think that makes much sense, but we are so accustomed to seeing things the way we've been taught that it's hard to rearrange "reality" in our heads.

For instance, we tend to see America as being built from the east coast: coming to this continent across the Atlantic, moving westward in a wave (the frontier), filling the continent and subduing it. Maybe even mowing it down. That's a culturally male way of looking at things.

I wrote a story here that has a different shape, more circular, more feminine: cultures from the east coming across the western sea and vice-versa, and our particular family epic pulling together like a drawstring at the center of the continent, at Lake Superior. The making of an individual is certainly more than the sum of culture, nation, and family, but these give us a ground upon which to build, to see the person who is like no other person.

One of the central premises of your book seems to be that every life is precious because of the incredible struggles that people have endured across the millennia so that each of us might exist. You have chosen to make this claim, however, on behalf of a person who is already powerfully sympathetic; one would hope that only a monster like Jinx would fail to be moved by a beautiful, blameless toddler who falls down a mine shaft. Do you think that your argument that life is made priceless by heredity would hold equally true for a harder case, for instance, a death-row inmate or, indeed, Jinx herself?

Let's start with Jinx. I surely did everything I could to redeem her, but her own choices undid her. Early readers of the novel commented on the fact that I had been able to show Jinx so compassionately—and I hope that is true—by suggesting that something in her own background predisposed her to her harshness.

Once upon a time years ago I met a woman this mean, meaner than I knew a human being could be, and she hovered in my mind malignly. I thought for a long time: why is she that way? I never came to an answer, but I made an assumption that it came from something way back, and deep. I don't excuse Jinx but I try to say: there's a reason she's this way, and there but for the grace of God go we all. Jinx is a meditation on the question that woman raised for me.

To argue the preciousness of any individual's life, Ursula is a great place to start because she is, as you say, both beautiful and blameless. But beauty comes in many forms, and yes, I believe it holds true for even the hardest cases. I have been an activist against capital punishment, not because I am soft on crime but because it makes no sense to take a life to show that taking a life is wrong, not to mention that studies have shown that when there is an execution, violent crime rates immediately skyrocket in response. It breeds violence. And so many criminals executed for their crimes have later been proven innocent. Oopsy.

For years I had wanted to write fiction featuring a character with a serious disability, but today all the "hardware" attending a physical limitation tends to draw attention to itself, as well as to mitigate the disability itself. So I wanted to write about these individuals—who are also blameless—in a way that would foreground their humanity.

Thus, Qin Lao's mute servant Zhou in Sichuan province (or, if you will, Qin Lao himself in his near-sterility), or Kyllikki a millennium later in the Village of the Sled Dogs, deaf from a fever, or noble Ming Tao born with "useless legs," or "white trash" Annie Maki crippled by Jinx—these are all people who are in one way or another broken, imperfect, and I hope it's clear that they are also priceless. There are many more half-hidden in the text, along the lines of those puzzle-pictures: find the hidden giraffe in the jungle.

In my so-called "real" life" I have worked as an aide to people confined to wheelchairs by cerebral palsy. I have served at the local free lunch program for people of limited means—lots of whom are in that position because of mental illness (real or imputed) or addictions, which are partly physical in origin. I am thinking in particular of Vietnam veterans, for whom my heart has ached for years. And now we have Gulf War veterans and Iraq is making its own. I have friends among these people, because I like them. I have been an advocate/supporter for women with unplanned pregnancies, and for their babies when they're born. I have been a peer counselor for abuse survivors. My husband has a kind heart for the elderly and has volunteered at the senior center for years—and we'll all get there soon enough.

As for old Jinx, she gave me the story, really: it was her remark, heard clearly in my head, which gave me the trigger for chapter one, so thank you, Virginia Jean.

Ursula, Under is interwoven with unexpected musical references, many of which have an almost miraculous feel to them. The deaf Kyllikki is able to "hear" a Bach cello sonata that will not be written for another thousand years. The dying Violeta is eerily aware of a motif from Beethoven's Sixth Symphony, also as yet unwritten. Unspecified music also accompanies the closing tableau of Ursula's ancestors on the novel's last page. Why does music play such a strong, mystical role in the novel?

Thanks for noting that. My reason for doing that was that I heard these myself, in my head, and I thought, why not share them with my readers in this way? The reason for my being unspecific in the "cloud of witnesses" finale was that I felt by this point my reader should have been brought to the point where he or she could become a co-imaginer with me, filling in more than is on the page, and deserving of having his or her name in the credits that roll at the end of the film.

And of course, since this is not a film, I ought to say that I wrote it as if it in fact were a film, as if I were responsible for scenery and effects and background music and even olfactory enhancement—smell-o-vision—which wouldn't be a factor if the book were a film. Readers of today read differently from those of a century ago, because they are so strongly influenced by film, film, film everywhere, and that is the audience for whom I write. Film has extended the parameters of our individual experience in ways never before imagined, and filmgoers will be reading this book with all the antennae they developed watching film—which I guess may no longer be literally film, if everything goes digital. O brave new world that has such cool stuff in it.

Reporting on Ursula's accident, Brandi Chandler-Greene wonders, "How can we tie this to the World Trade Center?" How was your writing of this novel influenced by 9/11, and what effect do you think 9/11 is having on the course of American fiction?

The World Trade Center disaster occurred in the middle of my writing of the novel. I spent a day or so glued to the television and a lot of hours reading the New York Times individual biographies of all the people who died that day. Then I went back to writing my novel.

I tried to portray Brandi Chandler-Greene sympathetically but as a newscaster in the mold of many today, always looking for a "hook" and sometimes reaching too much. She has had a sheltered life, and that is why 9/11 is the only disaster that comes to her mind. In the classroom, I find that to most students Vietnam might as well be the Peloponnesian Wars—and when was that Persian Gulf dealie again?—and World War II and World War I all blur together. The Spanish-American war, the Civil War, the American Revolution, the French and Indian Wars . . . aiiiee. Many people seem to think those were clean conflicts, sanitized and heroic deaths. We have little sense of history (that's from the department of understatement) and that's not a great thing.

As for natural disasters, as I write this, the world has just survived the Christmas earthquake and tsunami in Indonesia and Thailand: would anyone have conceived of something like that, even the day before? Likely not, but last year's movie The Day After Tomorrow eerily presaged it nonetheless. The power of nature continues to astound us: see Storm Stories on the Weather Channel and Twister (which was shot in part on a farm adjacent to the camp my children attended, here in Iowa).

Just yesterday as I was having my coffee I looked up and there on the TV was Pierce Brosnan in Dante's Peak, a volcano erupting in the middle of everyone's "normal" lives. I think disaster stories serve as a kind of catharsis as well as a form of dress rehearsal in our minds for something that might be just around the corner.

I saw a great list on Amazon, a guy's favorite disaster movies: Nature Hates You was the title. Itty-bitty humans fighting the forces of nature always makes a story. We win for a bit, but then we die, and Mother Nature goes on high-fiving Father Time—and there comes the Disney cartoon version of Zeus with those thunderbolts.

Ursula, Under contains a host of bad fathers and husbands. Joe Cimmer abandons Justin and his mother. Annie Maki's father is an alcoholic. Daisy Chen, the omniscient narrator tells us, would have been sexually mistreated by her father Chen Bing if he had not drowned. Isak Karajamaki is incapable of sexual expression that is not a form of degradation. Why in a novel that so enthusiastically celebrates procreation does the narrative voice seem so suspicious of one half of the procreative equation?

Gimme a break. It doesn't take a rocket scientist to see that fathers leave their families more often than mothers leave their families. As Bill Clinton said when asked why he did what he did—"Because I could"—similarly the prevalence of father-abandonment is because more men can leave. It's as if we make a mental note, oh, well, another one bites the dust, and hardly a ripple on the radar. Cinderella keeps sweeping while she composes a symphony in her head—and more women are busy handling the nitty-gritty business of life which is not so easy to walk out on.

But really, now, you can't mean that you think I condemn these guys you named, do you? I want my reader to have compassion for them, too. Joe is impacted by his own father's abandonment—"Because he could"—and I think we get quite a good view into his tortured psyche, which cannot comprehend Mindy Ji's forgiveness, but that's okay. Win-win situation.

Garrett Maki is such a lost soul because his mind was shattered by what he was forced to do in Vietnam, in the name of "manliness," and Liz consistently defends him to Annie as a person who was not this way before. Chen Bing is a tad like Jinx, though far less malevolent: he is just an unredeemed screw-up. Still I hope my readers can identify with that screw-up part of themselves, because we all have it in us.

And I think you're taking Isak somewhere I never meant for him to go. We can identify with Marjatta's chagrin at his insensitivity, but, hey, he didn't invent it, and he's trying, and it's sad that Marjatta can never love him as she loved Emil, even though Isak tries his darnedest.

Point B would be: the biggest villains, the nastiest people, in this book are female: Jinx Muehlenberg?—check. Vappu-Loviisa?—check. Christina of Sweden?—hardly a redeeming quality to her, right? Feminism is not about female superiority but about equality and inclusion and cooperation, none of which these gals believe in. These women have power, but they seem to have sold out their humanity in the process of gaining it—a characteristic which is not gender-bound.

Good writers tend to know a few things about the art of reading. What words of advice do you have for readers seeking to get the most out of reading your fiction and, indeed from their reading experiences in general?

I would hope they'd bring to my book the same hunger for experience that they bring to the movies: in literature, language is the medium, and it demands more of the reader than film in some respects—the reader must be in charge of casting, and location, and scenes, and special effects, and so on—but I think my readers are up to that. I would hope that some of my love of language and image might be contagious, and that others might say, hey, I didn't know language could do that, and then do it themselves, in their speaking and e-mailing and maybe even writing. I think this applies to all writing worth reading.

Your biography mentions that you are the mother of twelve children. Are there qualities in a successful parent that also go toward making a fine writer?

Mmmmmaybe. For instance, in the Odyssey, while Odysseus is away, Penelope keeps weaving and undoing and reweaving a funeral shroud for her father-in-law, Laertes; she is doing this to postpone a task she does not want, that of giving up on Odysseus and choosing from among her pesky suitors. I think that that is a wonderful metaphor for a lot of things we do, where we seem to have to start over a fresh every day—and no, I do not think that the myth of Sisyphus and his rock that keeps rolling back down is as good for my purposes, because Penelope's task is a more complex one. I think that the task of a parent and the task of a writer are much like Penelope's: new every day, and only more demanding, not less, though also more rewarding.

I cannot imagine parenting a child without paying a great deal of attention to nurturing his or her imagination and faculty of questioning, and that is something that good writing does for its readers too.

I was once told (when I had eleven children) that Virginia Woolf said a writer could not have eleven children because her brain would have turned to mush. I replied that that simply showed the limitations of Virginia Woolf's perspectives, which made sense in her sheltered and aristocratic life but don't work as well everywhere else. Not to mention that today we have so many more practical helps (more ease of food preparation, cars, appliances, film and video, the Internet) in raising and educating children. Yes, I know the Internet is a jungle, but as the writer above puts it, life continues to be a "ceaseless struggle to extract moments of goodness and purity from a world of tragedy." So the Internet is also a miracle.

Parenting takes perseverance: so does writing. Parenting demands creativity: so does writing. Parenting pays back great emotional and spiritual rewards—and also gives us grief. So does writing. Both are manifestations of the great spirit of life itself.

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 Ingrid Hill at BookBrowse
Ursula, Under 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 Ingrid Hill 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

  • Susan Barker

    Susan Barker

    Susan Barker is the author of four books. Her third novel, The Incarnations, was a New York Times Editors' Choice and Notable Book, a Kirkus Reviews' Top Ten Book of the Year, and was shortlisted for the Kirkus Prize for ... (more)

    If you enjoyed:
    Ursula, Under

    Try:
    The Incarnations
    by Susan Barker

  • Nomi Eve

    Nomi Eve

    Nomi Eve is the author of Henna House and The Family Orchard, which was a Book-of-the-Month Club main selection and was nominated for a National Jewish Book Award.

    She has an MFA in fiction writing from Brown University and ... (more)

    If you enjoyed:
    Ursula, Under

    Try:
    The Family Orchard
    by Nomi Eve

We recommend 6 similar authors

View all 6 Read-Alikes

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...

If there is anything more dangerous to the life of the mind than having no independent commitment to ideas...

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 09:41 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
1780306880058 ms 1.78030688006E+012 ms 1 /root/website/app_server.cfm
555 ms 555 ms 1 /root/website/author_interviews/full/index.cfm
217 ms 217 ms 1 /root/website/app_layout.cfm
139 ms 139 ms 1 /root/website/author_interviews/full/dsp_main.cfm
132 ms 132 ms 1 /root/website/site/blocks/layout/dsp_right_column.cfm
125 ms 125 ms 1 /root/website/app_globals.cfm
96 ms 32 ms 3 /root/website/adsystem/adsystem_mod.cfm
75 ms 38 ms 2 /root/website/queries/qry_get_books_by_author_id.cfm
69 ms 69 ms 1 /root/website/queries/qry_get_active_obc.cfm
62 ms 62 ms 1 /root/website/site/blocks/dsp_border_first_impressions.cfm
61 ms 61 ms 1 /root/website/queries/qry_get_arcs_for_ad.cfm
47 ms 47 ms 1 /root/website/adzones/AdZone6.cfm
44 ms 44 ms 1 /root/website/queries/qry_get_books_by_author_id_lite.cfm
33 ms 33 ms 1 /root/website/site/blocks/layout/dsp_footer.cfm
32 ms 32 ms 1 /root/website/adzones/showcase_track.cfm
28 ms 9 ms 3 /root/website/site/blocks/membership_advantages.cfm
27 ms 9 ms 3 /root/website/queries/qry_get_member_account_types.cfm
23 ms 23 ms 1 /root/website/adzones/AdZone2.cfm
22 ms 22 ms 1 /root/website/queries/qry_get_current_competition.cfm
19 ms 19 ms 1 /root/website/site/blocks/dsp_book_giveaway.cfm
12 ms 12 ms 1 /root/website/queries/qry_get_all_books_by_author_id.cfm
11 ms 11 ms 1 /root/website/queries/qry_get_current_wordplay.cfm
8 ms 8 ms 1 /root/website/actions/adstatus.cfm
7 ms 7 ms 1 /root/website/queries/qry_get_author_readalikes_by_id.cfm
6 ms 6 ms 1 /root/website/queries/qry_get_bb_briefs_by_author.cfm
3 ms 3 ms 1 /root/website/act_check_login.cfm
3 ms 1 ms 4 /root/website/actions/act_spider_tracker.cfm
3 ms 3 ms 1 /root/website/queries/qry_get_member_info.cfm
1 ms 1 ms 1 /root/website/Application.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/layout/dsp_bottom_block.cfm
1 ms 1 ms 1 /root/website/site/blocks/layout/dsp_header.cfm
1 ms 1 ms 1 /root/website/site/blocks/layout/main_menu.cfm
0 ms 0 ms 1 /root/website/act_libraryIPLogin.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/queries/qry_get_previous_arcs_for_ad.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_border_booktalk.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/head.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_search.cfm
1 ms  STARTUP, PARSING, COMPILING, LOADING, & SHUTDOWN
557 ms  TOTAL EXECUTION TIME
red = over 250 ms average execution time


SQL Queries

spidercheck (Datasource=bookbrowse_com_new, Time=3ms, Records=1) in /root/website/actions/act_spider_tracker.cfm @ 09:41:20.020
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=3ms, Records=0) in /root/website/queries/qry_get_member_info.cfm @ 09:41:20.020
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=7ms, Records=2) in /root/website/actions/adstatus.cfm @ 09:41:20.020
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 @ 09:41:20.020
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 @ 09:41:20.020
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=5ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 09:41:20.020
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=16ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 09:41:20.020
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 @ 09:41:20.020
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=15ms, Records=0) in /root/website/queries/qry_get_active_obc.cfm @ 09:41:20.020
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=16ms, Records=1) in /root/website/queries/qry_get_active_obc.cfm @ 09:41:20.020
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=36ms, Records=4) in /root/website/queries/qry_get_active_obc.cfm @ 09:41:20.020
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=15ms, Records=1) in /root/website/queries/qry_get_books_by_author_id_lite.cfm @ 09:41:20.020
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) = 1187

get_author_by_author_id (Datasource=bookbrowse_com_new, Time=29ms, Records=1) in /root/website/queries/qry_get_books_by_author_id_lite.cfm @ 09:41:20.020
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) = 1187

get_all_books_by_author_id (Datasource=bookbrowse_com_new, Time=11ms, Records=1) in /root/website/queries/qry_get_all_books_by_author_id.cfm @ 09:41:20.020
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) = 1187
Parameter #2(CF_SQL_INTEGER) = 1187

get_bb_briefs_by_author (Datasource=bookbrowse_com_new, Time=6ms, Records=0) in /root/website/queries/qry_get_bb_briefs_by_author.cfm @ 09:41:20.020
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) = 1187

get_author_readalikes_by_id (Datasource=bookbrowse_com_new, Time=7ms, Records=6) in /root/website/queries/qry_get_author_readalikes_by_id.cfm @ 09:41:20.020
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) = 1187

get_ads (Datasource=bookbrowse_com_new, Time=8ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 09:41:20.020
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=9ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 09:41:20.020
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=14ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 09:41:20.020
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=7ms, Records=1) in /root/website/actions/udfs.cfm @ 09:41:20.020
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) = 1635

get_member_account_types (Datasource=bookbrowse_com_new, Time=8ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 09:41:20.020
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=4ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 09:41:20.020
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) = 2696
Parameter #2(CF_SQL_INTEGER) = 2696
Parameter #3(CF_SQL_INTEGER) = 2696

get_author_by_author_id (Datasource=bookbrowse_com_new, Time=4ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 09:41:20.020
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) = 2696

get_books_by_author_id (Datasource=bookbrowse_com_new, Time=46ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 09:41:20.020
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) = 519
Parameter #2(CF_SQL_INTEGER) = 519
Parameter #3(CF_SQL_INTEGER) = 519

get_author_by_author_id (Datasource=bookbrowse_com_new, Time=20ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 09:41:20.020
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) = 519

get_member_account_types (Datasource=bookbrowse_com_new, Time=3ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 09:41:20.020
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=17ms, Records=0) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 09:41:20.020
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=44ms, Records=3) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 09:41:20.020
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=23ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 09:41:20.020
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=8ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 09:41:20.020
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=13ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 09:41:20.020
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=18ms, Records=1) in /root/website/site/blocks/dsp_book_giveaway.cfm @ 09:41:20.020
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 @ 09:41:20.020
SELECT 	*
    FROM 	free_newsletters
get_ads (Datasource=bookbrowse_com_new, Time=13ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 09:41:20.020
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=5ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 09:41:20.020
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=6ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 09:41:20.020
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=CFCLIENT_BOOKBROWSE=order%3Dp%23member%5Fnumber%3D0%23member%5Factive%5Fflag%3D0%23member%5Flogged%5Fin%5Fflag%3D0%23library%5Fuser%5Fflag%3D0%23view%3Dbooks%23; CFTOKEN=4ccdda36f1aeb6da-1994806B-A943-C248-9154A946D9F8A205; CFGLOBALS=urltoken%3DCFID%23%3D4094065%26CFTOKEN%23%3D4ccdda36f1aeb6da%2D1994806B%2DA943%2DC248%2D9154A946D9F8A205%23lastvisit%3D%7Bts%20%272026%2D06%2D01%2009%3A41%3A20%27%7D%23hitcount%3D137%23timecreated%3D%7Bts%20%272026%2D06%2D01%2009%3A41%3A00%27%7D%23cftoken%3D4ccdda36f1aeb6da%2D1994806B%2DA943%2DC248%2D9154A946D9F8A205%23cfid%3D4094065%23; CFID=4094065; FREEACCESSCOUNT=1
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/1187/ingrid-hill
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=4094065
cftoken=4ccdda36f1aeb6da-1994806B-A943-C248-9154A946D9F8A205
hitcount=142
lastvisit={ts '2026-06-01 09:41:20'}
library_user_flag=0
member_active_flag=0
member_logged_in_flag=0
member_number=0
order=p
timecreated={ts '2026-06-01 09:41:00'}
urltoken=CFID=4094065&CFTOKEN=4ccdda36f1aeb6da-1994806B-A943-C248-9154A946D9F8A205
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#=4094065&CFTOKEN#=4ccdda36f1aeb6da-1994806B-A943-C248-9154A946D9F8A205#lastvisit={ts '2026-06-01 09:41:20'}#hitcount=137#timecreated={ts '2026-06-01 09:41:00'}#cftoken=4ccdda36f1aeb6da-1994806B-A943-C248-9154A946D9F8A205#cfid=4094065#
CFID=4094065
CFTOKEN=4ccdda36f1aeb6da-1994806B-A943-C248-9154A946D9F8A205
FREEACCESSCOUNT=1
Session Variables:
cfid=4094065
cftoken=4ccdda36f1aeb6da-1994806B-A943-C248-9154A946D9F8A205
sessionid=BOOKBROWSE_4094065_4ccdda36f1aeb6da-1994806B-A943-C248-9154A946D9F8A205
urltoken=CFID=4094065&CFTOKEN=4ccdda36f1aeb6da-1994806B-A943-C248-9154A946D9F8A205
URL Parameters:
author_number=1187
ingrid-hill=
Debug Rendering Time: 7 ms