Edwidge Danticat Interview, plus links to author biography, book summaries, excerpts and reviews

Edwidge Danticat

Edwidge Danticat

How to pronounce Edwidge Danticat: Edweedje Danticah

An interview with Edwidge Danticat

In two separate interviews, Edwidget Danticat discusses issues raised in her novels, The Dew Breaker and Breath, Eyes, Memory; including the nature of love and forgiveness and the immigrant experience.

Two separate interviews with Edwidge Danticat in which she discusses The Dew Breaker and Breath, Eyes, Memory.

A Conversation with Edwidge Danticat about The Dew Breaker

Q: Can you tell us about the title of your new book The Dew Breaker?
A: The title is my English translation of a Creole expression "choukèt laroze," which during the twenty-nine year period (1957-1986) that Haiti was ruled by the father and son dictators, François "Papa Doc" and Jean Claude "Baby Doc" Duvalier, referred to a rural chief, a brutal regional leader and sometime torturer. I have always been fascinated by the poetic naming of such a despicable authority figure and when I started writing about a former torturer, I decided to translate the expression in the most serene sounding way I could. And so we have the dew breaker. I could have chosen several other ways to translate this, the dew shaker, the dew stomper, for example, but I like the way the words dew breaker echo the American expression ball breaker, which is a more fitting label for these kinds of people.

Q: Why did you decide to structure the telling of the book in the way that you do? Do you feel that this book represents a departure from your previous works? If so how?
A: I wanted the book to open up, as you read it, that is, with each new character, each new situation, I wanted to add layers upon layers to the central figure, the dew breaker. I wanted the reader to be introduced to the dew breaker from different angles, and for those who love him, and even for him, to see himself from various perspectives. This book is a departure for me in that I am writing mostly about men. And I am writing about different time periods in a non-linear way.

Q: What kind of research, if any, went into the writing of the book?
A: I read a lot about the twenty-nine year period of the dictatorship, even though I have merged certain years and have moved certain events to fit the period the book covers. I read a lot of personal narratives, academic texts, old news accounts, spoke to a lot of people and asked them to share their memories of growing up during the Duvaliers’ dictatorship. I was born in 1969, and spent the first twelve years of my life under the dictatorships so I also used my own memories. For example, there is an incident in the book where a minister is arrested by Papa Doc’s henchmen. This really happened when I was growing up. The minister was severely beaten as he was leaving his church one night and was nearly killed, so I use my memories of that time. The real life minister also had a radio program on Radio Lumière, the religious station mentioned in the book, even though he never used the words my fictional minister uses in his radio and live sermons.

Q: Would you say that most of your characters attempt in some way to reinvent themselves or escape their past? How successful are they?
A: Like all new immigrants, many of the characters have no choice but to reinvent themselves in some way or other. Otherwise they would not survive their new lives in America. They try to forget what haunts them and use what is useful to them from their past, but ultimately, most of them find balancing these two realities quite difficult. And like all immigrants, some of them succeed and some of them fail.

Q: To what extent are you trying to inform people about Haitian politics and people in your writing? What response do you expect to The Dew Breaker in the Haitian-American community?

A: It’s hard to say how anyone will react to a book. You never know until they read it, and if they choose to share their impressions with you, react to it. There is not one Haitian-American community, but several communities. I am really not sure how these communities will react. I hope, as I do for all my books, that it will cause some reflection and healthy debate, especially as Haiti celebrates two hundred years of independence in 2004, but still finds itself mired in poverty and political quagmires. I hope with everything I write that it will make people think of Haiti as a very complex place. My greatest wish is that after reading my book, my readers will go out and find many more books to read about Haiti.

Q: You have spent most of your life in America. What is it like for you to write of a place which, though an integral part of your life, is no longer your home? And do your memories of Haiti inform your writing?
A: My memories inform my writing a great deal, but since Haiti is a lively place, a place that is changing all the time, I can’t afford to just use my memories. I do a lot of research. I go to Haiti a lot, since I still have family there. I observe. I listen. I blend the Haiti I see today with the Haiti I once lived in and try to create interesting and complex situations for my characters who are facing the current reality as well as the past. Though I don’t live in Haiti, I feel very connected to it. It’s as much a part of me as the United States, as much home for me–if in a more spiritual way
–as where I live now in Miami.

Q: At one point in the book, an aspiring journalist, Aline, thinks that she "had never imagined that people like Beatrice (a bridal seamstress she is interviewing in Queens) existed, men and women whose tremendous agonies filled every blank space in their lives." Aline realizes that these are the people she wanted to write about. Is the way Aline thinks of these men and women in this passage similar to how you conjure the characters you write about?
A: Yes and no. I am indeed very much drawn to people who live in between determined categories, people who are something between model immigrants and so called deviant ones like Claude, a young man who is deported from the United States for committing a horrible crime. I think all of us live nuanced and complicated lives. I am not interested in writing about people who can be defined too easily, who are either too good or too bad. I like to write about those gray places, those "blank" spaces, if you will, the stuff in-between.

Q: "People here (in America) are more practical maybe," a first-generation American character states "but there, in Haiti or the Philippines, that’s where people see everything, even things they’re not supposed to see. So I see a woman’s face in a rose, I’d think somebody drew it there, but if you see it, Manman, you think it’s a miracle." Do you think of this American "practicality" as a positive force? What would you say are some of its repercussions, if any? And on the other hand, do you think that poorer countries of the world may pay a price for holding on to tradition, or to their spiritual beliefs?
A: In this scene, the dew breaker and his wife and daughter are on their way to church. The mother likes to talk about miracles so she mentions this one miracle she’s just read about a Filipino man who had seen the Madonna’s face on a rose petal. Her daughter replies by trying to find a proper, an "American" explanation for this miracle–for instance maybe someone drew the Madonna’s face on the rose petal. In an early draft, I had the mother reply that on American money it says "In God We Trust" to show that Americans have their traditions and firm beliefs too. The American Dream in itself is a kind of miracle story, isn’t it? I think when you talk about people from poorer countries, you have to realize that not all people from poorer countries have the same beliefs. There are people from Haiti or the Philippines, for example, who would reply the same way as this first generation American woman. So the dichotomies are not always so clear cut. We all have our traditions, which have both positive and negative repercussions. It all depends on how we integrate them in our lives and whether they serve us or hold us back. But I don’t believe there’s anything wrong with having faith, as long as it does not become a crutch. On some level the preacher in the book is being punished for preaching liberation theology, because he’s basically saying that tradition and faith can be used to oppress a nation. In the most evil hands, traditions can be used like a weapon against a people. In some other instance it’s the very thing that liberates them.

Q: Some of the Haitian characters in your book are portrayed as trying to create a tiny version of their home country in America, never quite stepping wholly outside that world. How do you think this affects their experiences as immigrants?
A: I think we’re all a little cautious when we move to a new place. We all retreat to familiar versions of our old lives and try to recreate that in the new place. Many of the characters eventually move into their new society, but for some of them it takes much longer than others. Having just left a dictatorship, most of the characters are fearful as they try to navigate a new situation they barely understand. They seek comfort in each other. Sometimes one has to do that to survive. If you don’t speak the language, naturally you’re going to try to find other people like you, people who might be able to help you go to the doctor, get a job. So sometimes that first period of insularity is not a choice, but a necessity.

Q: Anne, the wife of the "Dew Breaker" is able to remain married to a man she knows to have committed unspeakable acts, while a village embraces a man who has killed one of their own. What does this say about the nature of love and forgiveness?
A: This is the part of the book I wrestled with the most. How do we love people who have done such horrible things? When I was younger, I was always confused that the dictators’ foot soldiers, who were so brutal with other people had wives and children, whom I assumed they loved. This is something I could never clearly explain to myself. I am not saying that everyone should be forgiven and loved after having done such terrible things. I think people like this should be punished as severely as justice allows. But we have those cases where the mothers of murdered children befriend the killers. Where former victims in South Africa embrace their torturers. I can’t explain that, but I think somehow people can and do reach deep inside themselves to make that happen, so that they can move on with their own lives. But for people whose fathers and mothers committed these crimes, I will often hear them say, "That is not the same person I knew. That is not my mother, my father, my brother, my sister." Perhaps there is a part of that person that the loved one will always hate, but there is also a part of them that they’re somehow able to love, the part who tucked them in at night and walked them to school in the morning. I think it’s an incredible act of love, to love someone whom you know, on some level, is not at all worthy of anyone’s love.

Q: What’s next for you?
A: I hope to start another novel soon. I just finished a young adult book called Anacaona, Golden Flower. It’s about a Taino queen named Anacaona. She ruled over a part of Haiti, Léogâne, where my family is from. She was a warrior, a dancer, a storyteller, and a fantastic potter and has been my (s)hero since I was a little girl.





A Conversation with Edwidge Danticat about Breath, Eyes, Memory

Q: Why did you decide to write Breath, Eyes, Memory?

A: I started Breath, Eyes, Memory when I was still in high school after writing an article for a New York City teen newspaper about my leaving Haiti and coming to the United States as a child. After the article was done I felt there was more to the story, so I decided to write a short story about a young girl who leaves Haiti to come to the United States to be reunited with her mother, who she doesn't really know. The story just grew and grew and as it grew I began to weave more and more fictional elements into it and added some themes that concerned me.

Q: What would you say those themes are?

A: One of the most important themes is migration, the separation of families, and how much that affects the parents and children who live through that experience. My father left Haiti to come to New York seeking a better life--economically and politically--when I was only two years old, and my mother when I was four years old. I was raised by my aunt and uncle, and even though I understood, I think, early on the great sacrifices that my parents were making, I still missed them very much. But having formed parental-type relationships with my aunt and uncle, I was really torn and heartbroken when I had to leave them to be reunited with my parents in New York. So I wanted to deal with that from the point of view of a child who's faced with this situation. I wanted to include some of the political realities of Haiti--as a young girl felt and interpreted them--and how that affected ordinary people, the way that people tried to carry on their daily lives even under a dictatorship or post-dictatorship. Finally, I wanted to deal with mother-daughter relationships and the way that mothers sometimes attempt to make themselves the guardians of their daughter's sexuality.

Q: Do you think that the mothers' concern with their daughters' sexuality, the concern for virginity as expressed in the book, is something that is particularly and singularly Haitian?

A: Oh no. Not at all. The "testing" in the book for example, goes back to the Virgin Mary. If you look at the apocryphal gospels, after the Virgin Mary gives birth to the Christ child, a midwife comes and tries to test her virginity by insertion, if you can imagine. The family in the book was never meant to be a "typical" Haitian family, if there is ever a typical family in any culture. The family is very much Haitian, but they live their own internal and individual matriarchal reality and they worship the Virgin Mary and the Haitian goddess Erzulie in many interesting forms. The essential thing to all the mothers in the book is to try, in their own way, to be the best mothers they can be, given their circumstances, because they want their daughters to go further in life than they did themselves.

Q: What was it like for you to come to the United States as a child?

A: It was all so very different. I didn't speak the language. I felt very lost and I withdrew into myself, became much more shy than I already was. I sought solace in books, read a lot, and kept journals written in fragmented Creole, French, and English. I think it's very difficult for every child who comes here from another culture. I tried to deal with some of these adjustment issues in the book: the whole idea of learning another language and getting used to a completely new environment. Part of the reason that Breath, Eyes, Memory is told in these four fragments is that Sophie, the narrator, is a recent speaker of English, and in telling a story in English she would definitely try to be economical with her words. Her voice would have less novelistic artifice, for example. She would mostly get to the important events, right to the point. She would also get some things wrong, sometimes, but it would all come back to the story, what she wants to tell you.

Q: How much of your book is autobiographical?

A: The book is more emotionally autobiographical than anything else. It's a collage of fictional and real-life events and people. To quote a wonderful Haitian-American writer who came before me, a man named Assotto Saint, "I wanted to write a carefree poem for my childhood lost too fast... somewhere in the air between Port-au-Prince & New York City." But I also wanted to tell a story in the very basic sense of the word, create a narrative that would keep you interested in the lives of the characters.

Q: Why do you write in English and not in French or Creole?

A: I came to the United States at an interesting time in my life, at twelve years old, on the cusp of adolescence. I think if we had moved to Spain, I probably would have written in Spanish. My primary language was Haitian Creole, which at the time that I was in school in Haiti was not taught in a consistent written form. My instruction was done in French, which I only spoke in school and not at home. When I came here I was completely between languages. It's not unusual for me to run into young people, for example, who have been here for a year and stutter through both their primary language and English because the new language is settling into them in a very obvious way. I came to English at a time when I was not adept enough at French to write creatively in French and did not know how to write in Creole because it had not been taught to me in school, so my writing in English was as much an act of personal translation as it was an act of creative collaboration with the new place I was in. My writing in English is a consequence of my migration, in the same way that immigrant children speaking to each other in English is a consequence of their migration.

Q: How often do you go back to Haiti?

A: I go back as often as I can. For family visits and other things. I still have a lot of family in Haiti and going back is often linked to family affairs.

Q: Do you think about being a role model, a representative for your culture?

A: I come from a very rich, strong, proud, and varied culture. There are so many aspects to Haitian culture that one person could not ever ever represent them all, and humbly and respectfully I don't believe that this task is mine. I'm a weaver a tales. I tell stories. Speaking on national culture, Frantz Fanon says that "Each generation must out of relative obscurity discover its mission, fulfill it, or betray it." I'm simply trying to fulfill mine. What I do is neither sociology, nor anthropology, nor history. I think artists have to be allowed to be just that: people who create, who make things up. However, as Ralph Ellison writes at the end of Invisible Man, "Who knows but that, on the lower frequencies, I speak for you?" I hope to speak for the individuals who might identify with the stories I tell. However, I think it would be disrespectful of me to reduce the expression of an entire culture to one voice, whether that voice be mine or any other individual's. There are many great and powerful role models and representatives in Haitian life. There are millions and millions of Haitian voices. Mine is only one. My greatest hope is that mine becomes one voice in a giant chorus that is trying to understand and express artistically what it's like to be a Haitian immigrant in the United States.

A Conversation with Edwidge Danticat about Claire of the Sea Light

Q: Claire of the Sea Light centers around a man who is faced with the question of whether or not to give his much beloved daughter away to a woman he feels will give her a better life. How did the idea of this heart-wrenching choice come to you?

A: A few years ago, I was watching a program on television about some Haitian children who were placed in foreign-run orphanages in Haiti, even though their parents were still alive. These are parents, who, for economic reasons, were unable to care for their children, and so put them in orphanages, hoping that their children would have a better life. In some cases, the parents visited their children on a regular basis and brought them things—whatever they could. I have a dear friend who grew up this way. He eventually reconciled with his birth family as an adult.

In the program I was watching, someone—an aid worker—commented on this situation, saying that Haitians are not as attached to their children; otherwise they wouldn't just give them away. That comment stayed with me for a very long time. I didn't grow up in a nuclear family. My brother and I spent the early part of our lives with my aunt and uncle in a house full of cousins, many of whose parents like ours, were not with us, because they had to go abroad to find work. I knew how difficult that choice was for my parents and for my friend's parents: You keep your child with you and you both suffer, or you take a huge leap of faith and you leave your children--for a while or forever--hoping that they will have a slightly better future. I wanted to try to write about someone having to make that choice. And I wanted to show that moment of choice from three different perspectives: the parent, the child, and the potential new parent. I also wanted to explore the ways that different members of a community can be linked, loosely or closely, to one particular child.

Q: While this book moves back and forth though time and over many years, its main action all takes place in the course of the one evening that Claire goes missing. What made you decide to structure the book this way?

A: I think of this book as one single moment that keeps expanding in space and time, backwards, forward, and into the present. I wanted to tell Claire's story, but also the story of this small town and its dynamics, and a few of its remarkable inhabitants and visitors. The simplest and yet most urgent way I could think of doing this was to have much of the action take place during one night—a night when people are either looking for Claire or waiting, hoping for her to come back. Something tragic had happened early that morning, and as the book progresses there's potential for more tragedy in the evening. Unifying time this way in the book gave me a structure to work with, to think on, moments in a day and night to return to over and over, which was very helpful in a book where I wanted to write about and explore so many different characters.

Q: The radio plays a key part in the book's events. I know you've said in an interview that you have thought of the book in some ways like a radio show that unfolds in episodes. Can you talk a bit about this?

A: Initially, I wanted to write a book about a radio show in which each chapter, each story if you will, was an episode of that show. And though that is not quite what happens now, the radio plays a key role in the story at various junctures. For example there is a radio show hostess named Louise George, who is also an aspiring writer trying to write a book about the town—a collage of a book, kind of like mine. Radio is an important medium in Haiti, one that nearly everyone listens to. The radio can be used to do many things, including expose injustice, exact justice, or settle scores, as Louise does via her show.

Q. You really convey how intertwined lives are in small communities like Ville Rose. Not to mention how many secrets there are! Was the town where you grew up similar?

A: My mother's name is Rose. Ville Rose, which I first wrote about in my second book, a story collection called Krik? Krak!, is very loosely based on the town where my mother grew up, Léogâne, which is about twenty miles from the capital. Within that town is a smaller place called Cité Napoleon, which was named after my mother's family. My mother's people were better off than my father's people and were really grounded in that place. When I was little I used to visit my mother's mother there. The place has changed a lot over the years and now we only have two close cousins who are still there. Ville Rose is a mixture of that place and many other seaside towns I have visited or spent time in over the course of my life.

Q. This is your first work of fiction in nine years. Do you approach writing fiction any differently than your nonfiction?

A: I really enjoy writing both fiction and nonfiction. With nonfiction, the story, if you will, already exists. The hard part is organizing it in a way that is engaging and interesting and artful. Having written fiction has helped me a lot with nonfiction. I never forget, for example, that I am telling a story and that it needs to have good pacing, etc...Having written nonfiction also makes me less afraid to write non-traditional fiction.

Q: You have two daughters, one close in age to Claire, and you were also recently involved in a wonderful documentary that aired on CNN called Girl Rising. Does Claire's character owe anything to the amazing girls in your own life?

A: The book is dedicated to my mother and my two daughters. It was definitely written with all three of them in mind. I spent eight of the first twelve years of my life without my mother. I was the age that my youngest daughter is now when my mother left Haiti to join my father in New York, to try to make a better life for us.

A lot of my vision of Claire comes from having spent the last eight years in the company of my two daughters. Wadley, the sweet little girl I wrote about in the documentary Girl Rising is almost the same age as my oldest daughter, Mira. Among the many things that the documentary and the book have in common is that they both try to tell a larger story via a small window into the life of one little girl.

Q: This book opens with an act of nature—a freak wave in the ocean outside Ville Rose that claims the life of a local fisherman—and the natural world is very much a character here (without giving anything away, the sea plays an important role at the end of this book as well.) Can you talk about how the natural world informs your writing and the lives of your characters?

A: Nature is indeed a character in this book, especially the sea. The sea gives. The sea takes, then takes again. When you live on an island, it's very easy to be vulnerable to nature's wrath. And if you add to that fact that your island is now considered seismic, you increase your vulnerability. I wanted to also show environmental vulnerability in Ville Rose, the way certain things—including whole species of animals—are disappearing or dying off.

Sometimes political and other man-made realities force people to make difficult choices vis-a-vis the environment. One also can't ignore the effect that global economic policies, which destroy the natural environment and financial independence of poor people in the developing world, have in making it nearly impossible for some to have decent lives, to maintain their sovereignty and dignity, and in some cases, to even keep their children with them. So yes, the natural world plays a really large role in the book. It is essentially one of the book's main characters.

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 Edwidge Danticat at BookBrowse
We're Alone jacket Everything Inside jacket The Art of Death jacket Untwine 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 Edwidge Danticat 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

  • Leila Aboulela

    Leila Aboulela

    Leila Aboulela won the first Caine Prize for African Writing and is the author of many novels. Minaret was longlisted for the 2006 Orange Prize. The Translator was one of The New York Times 100 Notable Books of the Year. ... (more)

    If you enjoyed:
    Everything Inside

    Try:
    Elsewhere Home
    by Leila Aboulela

  • Daniel Alarcon

    Daniel Alarcon

    Born in Lima, Peru in 1977, Alarcón was raised in Birmingham, Alabama. He is Associate Editor of Etiqueta Negra, an award-winning magazine published in his native Peru, and in 2013 served as a Fellow in the Investigative... (more)

    If you enjoyed:
    Everything Inside

    Try:
    The King Is Always Above the People
    by Daniel Alarcon

We recommend 56 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...

The secret of freedom lies in educating people, whereas the secret of tyranny is in keeping them ignorant

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 31-May-26 10:51 PM
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
1780267902002 ms 1.780267902E+012 ms 1 /root/website/app_server.cfm
174 ms 174 ms 1 top level /root/website/author_interviews/full/index.cfm
56 ms 56 ms 1 /root/website/author_interviews/full/dsp_main.cfm
50 ms 50 ms 1 /root/website/app_layout.cfm
39 ms 39 ms 1 /root/website/app_globals.cfm
33 ms 33 ms 1 /root/website/site/blocks/layout/dsp_right_column.cfm
30 ms 15 ms 2 /root/website/queries/qry_get_books_by_author_id.cfm
28 ms 9 ms 3 /root/website/adsystem/adsystem_mod.cfm
14 ms 14 ms 1 /root/website/adzones/AdZone6.cfm
14 ms 14 ms 1 /root/website/queries/qry_get_active_obc.cfm
11 ms 11 ms 1 /root/website/site/blocks/dsp_border_first_impressions.cfm
10 ms 10 ms 1 /root/website/queries/qry_get_arcs_for_ad.cfm
10 ms 10 ms 1 /root/website/queries/qry_get_books_by_author_id_lite.cfm
9 ms 9 ms 1 /root/website/site/blocks/layout/dsp_footer.cfm
8 ms 8 ms 1 /root/website/adzones/AdZone2.cfm
8 ms 8 ms 1 /root/website/queries/qry_get_bb_briefs_by_author.cfm
8 ms 3 ms 3 /root/website/queries/qry_get_member_account_types.cfm
8 ms 3 ms 3 /root/website/site/blocks/membership_advantages.cfm
7 ms 7 ms 1 /root/website/adzones/showcase_track.cfm
6 ms 6 ms 1 /root/website/queries/qry_get_author_readalikes_by_id.cfm
5 ms 5 ms 1 /root/website/site/blocks/dsp_book_giveaway.cfm
4 ms 4 ms 1 /root/website/queries/qry_get_all_books_by_author_id.cfm
4 ms 4 ms 1 /root/website/queries/qry_get_current_competition.cfm
3 ms 1 ms 4 /root/website/actions/act_spider_tracker.cfm
3 ms 3 ms 1 /root/website/actions/adstatus.cfm
3 ms 3 ms 1 /root/website/queries/qry_get_current_wordplay.cfm
2 ms 2 ms 1 /root/website/act_check_login.cfm
2 ms 2 ms 1 /root/website/queries/qry_get_free_newsletters.cfm
2 ms 2 ms 1 /root/website/queries/qry_get_member_info.cfm
2 ms 2 ms 1 /root/website/site/blocks/layout/dsp_bottom_block.cfm
2 ms 2 ms 1 /root/website/site/blocks/layout/dsp_header.cfm
1 ms 1 ms 1 /root/website/queries/qry_get_previous_arcs_for_ad.cfm
1 ms 1 ms 1 /root/website/site/blocks/layout/head.cfm
1 ms 1 ms 1 /root/website/site/blocks/layout/main_menu.cfm
0 ms 0 ms 1 /root/website/Application.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_current_ezine.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/header_announcement.cfm
0 ms 0 ms 1 /root/website/site/blocks/layout/main_search.cfm
1 ms  STARTUP, PARSING, COMPILING, LOADING, & SHUTDOWN
175 ms  TOTAL EXECUTION TIME
red = over 250 ms average execution time


SQL Queries

spidercheck (Datasource=bookbrowse_com_new, Time=2ms, Records=1) in /root/website/actions/act_spider_tracker.cfm @ 22:51:42.042
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=0ms, Records=0) in /root/website/queries/qry_get_member_info.cfm @ 22:51:42.042
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=3ms, Records=2) in /root/website/actions/adstatus.cfm @ 22:51:42.042
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 @ 22:51:42.042
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=2ms, Records=1) in /root/website/queries/qry_get_current_wordplay.cfm @ 22:51:42.042
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=1ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 22:51:42.042
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=1ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 22:51:42.042
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 @ 22:51:42.042
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=3ms, Records=0) in /root/website/queries/qry_get_active_obc.cfm @ 22:51:42.042
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=3ms, Records=1) in /root/website/queries/qry_get_active_obc.cfm @ 22:51:42.042
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=5ms, Records=4) in /root/website/queries/qry_get_active_obc.cfm @ 22:51:42.042
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=5) in /root/website/queries/qry_get_books_by_author_id_lite.cfm @ 22:51:42.042
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) = 1022

get_author_by_author_id (Datasource=bookbrowse_com_new, Time=3ms, Records=1) in /root/website/queries/qry_get_books_by_author_id_lite.cfm @ 22:51:42.042
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) = 1022

get_all_books_by_author_id (Datasource=bookbrowse_com_new, Time=2ms, Records=8) in /root/website/queries/qry_get_all_books_by_author_id.cfm @ 22:51:42.042
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) = 1022
Parameter #2(CF_SQL_INTEGER) = 1022

get_bb_briefs_by_author (Datasource=bookbrowse_com_new, Time=7ms, Records=3) in /root/website/queries/qry_get_bb_briefs_by_author.cfm @ 22:51:42.042
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) = 1022

get_author_readalikes_by_id (Datasource=bookbrowse_com_new, Time=5ms, Records=56) in /root/website/queries/qry_get_author_readalikes_by_id.cfm @ 22:51:42.042
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) = 1022

get_ads (Datasource=bookbrowse_com_new, Time=4ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 22:51:42.042
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=2ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 22:51:42.042
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=2ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 22:51:42.042
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=1ms, Records=1) in /root/website/actions/udfs.cfm @ 22:51:42.042
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) = 3986

get_member_account_types (Datasource=bookbrowse_com_new, Time=1ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 22:51:42.042
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=13ms, Records=3) in /root/website/queries/qry_get_books_by_author_id.cfm @ 22:51:42.042
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) = 1219
Parameter #2(CF_SQL_INTEGER) = 1219
Parameter #3(CF_SQL_INTEGER) = 1219

get_author_by_author_id (Datasource=bookbrowse_com_new, Time=2ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 22:51:42.042
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) = 1219

get_books_by_author_id (Datasource=bookbrowse_com_new, Time=7ms, Records=2) in /root/website/queries/qry_get_books_by_author_id.cfm @ 22:51:42.042
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) = 1881
Parameter #2(CF_SQL_INTEGER) = 1881
Parameter #3(CF_SQL_INTEGER) = 1881

get_author_by_author_id (Datasource=bookbrowse_com_new, Time=5ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 22:51:42.042
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) = 1881

get_member_account_types (Datasource=bookbrowse_com_new, Time=1ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 22:51:42.042
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=5ms, Records=0) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 22:51:42.042
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=4ms, Records=3) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 22:51:42.042
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=6ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 22:51:42.042
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 @ 22:51:42.042
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=0ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 22:51:42.042
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 @ 22:51:42.042
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=1ms, Records=4) in /root/website/queries/qry_get_free_newsletters.cfm @ 22:51:42.042
SELECT 	*
    FROM 	free_newsletters
get_ads (Datasource=bookbrowse_com_new, Time=3ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 22:51:42.042
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 @ 22:51:42.042
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=1ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 22:51:42.042
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=e2857f9b8f01c07c-025B29EA-9DA1-E69B-F580E72FF5E18106; CFGLOBALS=urltoken%3DCFID%23%3D4076110%26CFTOKEN%23%3De2857f9b8f01c07c%2D025B29EA%2D9DA1%2DE69B%2DF580E72FF5E18106%23lastvisit%3D%7Bts%20%272026%2D05%2D31%2022%3A51%3A37%27%7D%23hitcount%3D2%23timecreated%3D%7Bts%20%272026%2D05%2D31%2022%3A51%3A37%27%7D%23cftoken%3De2857f9b8f01c07c%2D025B29EA%2D9DA1%2DE69B%2DF580E72FF5E18106%23cfid%3D4076110%23; CFID=4076110
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/1022/edwidge-danticat
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=4076110
cftoken=e2857f9b8f01c07c-025B29EA-9DA1-E69B-F580E72FF5E18106
hitcount=2
lastvisit={ts '2026-05-31 22:51:37'}
library_user_flag=0
member_active_flag=0
member_logged_in_flag=0
member_number=0
order=p
timecreated={ts '2026-05-31 22:51:37'}
urltoken=CFID=4076110&CFTOKEN=e2857f9b8f01c07c-025B29EA-9DA1-E69B-F580E72FF5E18106
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#=4076110&CFTOKEN#=e2857f9b8f01c07c-025B29EA-9DA1-E69B-F580E72FF5E18106#lastvisit={ts '2026-05-31 22:51:37'}#hitcount=2#timecreated={ts '2026-05-31 22:51:37'}#cftoken=e2857f9b8f01c07c-025B29EA-9DA1-E69B-F580E72FF5E18106#cfid=4076110#
CFID=4076110
CFTOKEN=e2857f9b8f01c07c-025B29EA-9DA1-E69B-F580E72FF5E18106
Session Variables:
cfid=4076110
cftoken=e2857f9b8f01c07c-025B29EA-9DA1-E69B-F580E72FF5E18106
sessionid=BOOKBROWSE_4076110_e2857f9b8f01c07c-025B29EA-9DA1-E69B-F580E72FF5E18106
urltoken=CFID=4076110&CFTOKEN=e2857f9b8f01c07c-025B29EA-9DA1-E69B-F580E72FF5E18106
URL Parameters:
author_number=1022
edwidge-danticat=
Debug Rendering Time: 8 ms