What readers think of American Dirt, plus links to write your own review.

Summary |  Excerpt |  Reading Guide |  Discuss |  Reviews |  Beyond the book |  Read-Alikes |  Genres & Themes |  Author Bio

American Dirt by Jeanine Cummins

American Dirt

A Novel

by Jeanine Cummins
  • BookBrowse Review:
  • Critics' Consensus (11):
  • Readers' Rating (134):
  • First Published:
  • Jan 21, 2020, 400 pages
  • Paperback:
  • Feb 2022, 416 pages
  • Rate this book

Reviews

Page 2 of 7
There are currently 54 reader reviews for American Dirt
Order Reviews by:

Write your own review!

Marilyn H.

Still Thinking About This Book
Even though I read this book several months ago, I still think about it. I have recommended it to my friends and my book club. Truly, this is an amazing book and unbelievable feat for a first time author.
Susan

American Dirt
Well written and heart stopping. Kept me spellbound.
Veronica_Earley

Grateful
I couldn't put this book down. I just felt awful for all the characters in the story trying to get to the United States. The research to write this story was done with extreme care. The story was very well written. What a horrible ordeal.
Lloyde_Newman

You Won't Want to Miss a Word!
American Dirt is a book that embraces you in a tango of drama, love and strong emotions during a time of turbulence and unrest. It's hard to put the book down once you start reading. It is strongly and confidently written and will appeal to many readers, lovers of fiction and history. I would strongly suggest having a Spanish dictionary nearby to translate words that you are unfamiliar with. You won't want to miss a word! I highly recommend this book, and would even consider giving it as a gift.
Cynical Xennial

The Truth About Oprah's Controversial Selection
Politics and controversy aside, let me tell you about this amazing book I just read. It is one of those rare gems that you think of all day, looking forward to when you have time to return to its pages.

At the bones of this novel is a universal classic tale that can cross any genre and appeal to any reader: In a world where survival is extremely difficult, you would do anything to save your loved one. Along the treacherous journey, you must take the measure quickly of people you meet to predict if they are friend or foe. Will they survive? You’ll want to read it for yourself to see.

It also explores the ripple effects life choices/karma have on those closest to you. It’s in parts a tragic love story encased within timely talking points that will inspire important conversations, a perfect choice for a book club.

I understand that many people feel the author was out of place in writing about an experience she had not lived herself. She expresses her own doubts in the author’s note at the end, which she ends with the thought, If you’re a person who has the capacity to be a bridge, why not be a bridge?

But if we limit authors to only those experiences they have personally held, while we would theoretically gain authenticity, we would lose entire genres because most authors have never been to space, battled a fantastical creature, or lived during a past historical period. It is not uncommon for skilled authors to effectively write about a time, place or event that they have not personally experienced. It would be a travesty to cage authors into the unimaginative realm of their personal reality.

This novel had me, someone far removed from the character’s situation, not only thinking more deeply about the plight of migrants daily but also considering immigration from a drastically different light than what is presented in the news and general media. This is the magic that powerful books are capable of - they are catalysts for change.

The truth about American Dirt, the controversial recent selection for Oprah’s book club, is that it is a worthwhile, engaging and thought-provoking novel that is easily recommended to other readers. Is diversity important in literary publishing? Of course. Should there specifically be more Latino authors getting published? Yes, please! Is our country in need of immigration reform? Certainly. Does any of this take away from the excellence of this novel? No, it does not. As an esteemed scholar, Norma Prieto, told the author, “We need as many voices as we can get, telling this story.”
-------------------------------------------
Favorite Quote: The worst will either happen or not happen, and there’s no worry that will make a difference in either direction.

First Sentence: One of the very first bullets comes in through the open window above the toilet where Luca is standing.

Excerpt:Some share their stories carefully, selectively, finding a faithful ear and then chanting their words like prayers. Other migrants are like blown-open grenades, telling their anguish compulsively to everyone they meet, dispensing their pain like shrapnel so they might one day wake to find their burdens have grown lighter. Luca wonders what it would feel like to blow up like that. But for now, he remains undetonated, his horrors sealed tightly inside, his pin fixed snugly in place.
shannon leonetti

Compelling Read
Sometimes it is difficult to be late in the review process of a book because so many people have already discussed and/or reviewed the book. The human reaction is to simple say “there is nothing I can add to this discussion.” I had already written a draft of American Dirt when all the discussions turned to a deafening uproar. I wanted to scrap my review and simply say “there was nothing I could add to this discussion.” That said, I have decided to post my review, anyway. Why? Because whether a reader agrees or disagrees on whether or not Jeanine Cummins has written an accurate book or has the right to tell an immigrant story from a hispanic point-of-view doesn't really matter to me. American Dirt is/was a compelling narrative! While I was reading it, the question of credibility never even occurred to me. The well-told tale was gripping! It was a novel that did't matter! So with this belated caveat, I offer my small but well-intended review.

American Dirt, by Jeanine Cummins, is being hailed as the “Grapes of Wrath for our times." I am not sure if this is the appropriate description. What I am sure of is that this story is a powerful exploration into the lives of people who have everything they care about ripped from their lives and, overcoming unimaginable trauma, manage to cling to a thread of hope. They sacrifice whatever is left to save themselves.

Lydia Quixano Perez lives in the Mexican city of Acapulco. She has a young son and a journalist husband. She runs a bookstore. Her life is full of hard work but it is good and the family is very content. One day a man enters her book shop to browse. He is a reader and becomes a regular customer. Javier is charming and they will become friends. Lydia never suspects that from this very first visit her life is changed forever.

The opening paragraphs stun the reader and never let go. Cartel massacres throughout Acapulco have shrouded its citizens in ever-present tension and fear. Lydia and her son, Luca, find themselves fleeing from their home to escape contract killers hired by Jefe, the most dangerous drug-lord in the area. They have seen too much and Lydia knows their lives depend on them getting completely out of Mexico as fast as they can. Their perilous journey begins.

Cummins skillfully tells the story from both Lydia and Luca's points-of-view, enabling her audience to experience the contrast between an adult confronting the horrors of their escape and the naivete of child. The tension can be overwhelming but Cummins brings back that little bit of hope to keep us turning the pages. I was with Lydia in her fight for their lives. I was with both of them as they met other refugees along the way, never knowing who they could trust and who was a spy.

When reviewing a book my first question is always “Do I care about these characters?” The characters of American Dirt get an unequivocal yes! I not only cared about Lydia and Luca but all the nameless people they met along the way. I wanted to see their dream come true, a life free from the dangers they fled. I wanted their their dreams to come true.

American Dirt is not for the faint of heart. It's uncomfortable, full of graphic violence that leaves a trail of bodies in its wake. Hoboing with Lydia and Luca means the reader will travel two thousand miles with a constant chill down his or her back, never knowing what threat lies right in front of them. The trek is physically demanding. There is no way a mother and her son could prepare for this trek. They walk, ride trains like a hobo, and rarely sleeping two nights in the same place. I don't remember the last time I read deep into the night because I couldn't put a book down.

American Dirt is more than just a mother and son's journey. Cummins asks us to think about what we would do to survive what seems to be the unsurvivable? She does a careful job bringing attention to the refugee crisis without making it political. This could not have been a simple task since the author, herself, is married to a formerly undocumented immigrant. She says she started the novel to give a face to the migrants at the Mexican border. It became much more than that.

American Dirt has generated significant criticism. Questions such as whether or not Cummins, who grew up in Maryland in a working-class family and identifies as white, can of should be the person tell this story? She gets criticized for using too many cliches and stereotypes showing Mexico as a lawless, violent country overrun by drug cartels and corruption. And one Mexican-American writer called her novel “appropriating” and “inaccurate.”

Cummins does not disregard these criticisms. She concedes that she is an imperfect messenger for the story about migrants and she was afraid of getting it wrong. I don't know if the criticisms are justified. She researched the novel during trips to Mexico and by conducting interviews on both sides of the border. She spoke with people whose families had been torn apart by deportations, lawyers who work with unaccompanied minors, migrants in shelters in Tijuana and human-rights activists documenting abuses. It appears to be authentic and compelling.

I walked every step with Lydia. The descriptions of her emotions were impressive. Her shock and panic during and after a massacre, her courage and vulnerability on the road, and her strength and intelligence to do what it took to keep her son safe was heroic.  There is no doubt in my mind that this will be one of the great the books of 2020.

Cummins is the author of three other books: The Outside Boys (2010), and The Crooked Branch (2013) and her best-selling memoir A Rip in Heaven (2004). She lives on New York with her husband and two children. 
Carol_K

Realistic Portrayal of a Border Crossing
American Dirt will be published January 21, 2020. It has already made my 2020 Best List as I was fortunate to be an early reader thanks to Amy Einhorn, and Flatiron Books.

Have you ever experienced a horrible trip or had a bad experience visiting another country, one that made you promise to kiss American soil and be happy to be on solid American ground if you made it home? We take our freedom and homeland for granted. Imagine living in village in Mexico. You are a bookstore owner, you live your life for this and also for your eight year-old son and your journalist husband. Today you are hosting the Quinceañera of your niece. This celebration of the coming of age, the ritual of the transformation of a 15 year-old girl to woman, is stopped short, never to happen but forever to be imprinted in your mind. Instead this festive, proud day turns into a blood-bath of horror when gunmen come out of nowhere and sixteen of your relatives are killed, including the girl, your mother and husband. Only you and your son remain and you know you must flee before you are found. It takes you time to realize there are few places you can hide as this is more than a cartel lesson; it is revenge and nothing will stop the search until you and your child are dead. You must make it out of the country as the Los Jardineros will hunt you down. Many readers might have visited Acapulco for some rest and relaxation at one of its many resorts but probably none of you have thought what it would be like to walk from this southern Pacific Coastal town over 2500 miles to Mexico's border with the US. You will walk each mile with Lydia, Luca and those they meet on this harrowing journey.

In 2001 I read Highwire Moon by Susan Straight. It has always been a book that haunted me, putting face and story to immigrants and undocumented persons in our country. American Dirt is another eye-opener of a novel with characters you will not soon forget. Haunting. I find myself looking for Lydia and Luca on our streets.

Stephen King “defies anyone to read the first seven pages of this book and not finish it”. I was hooked in less than that.

One final note. As a bookstore owner, Lydia mentions many of her favorite books. She refers to Love in the Time of Cholera by the late Gabriel García Márquez. Makes me yearn to read that book once again
Laureen S. (Aurora, IL)

One of those books that stays with you
Even weeks after reading this book, I find myself thinking about it. It is such a raw and honest portrayal of immigration and the lengths people will go to for their survival and the survival of the ones they love. Cummins' writing is beautiful with wonderful character development. It should be required reading in high schools/colleges and I encourage everyone to read this powerful book.

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

Finishing second in the Olympics gets you silver. Finishing second in politics gets you oblivion.

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 /reader_reviews/index.cfm
Time Stamp 01-Jun-26 07:14 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
1780298043311 ms 1.78029804331E+012 ms 1 /root/website/app_server.cfm
654 ms 654 ms 1 /root/website/reader_reviews/index.cfm
397 ms 397 ms 1 /root/website/queries/qry_get_discussion_by_id.cfm
72 ms 72 ms 1 /root/website/queries/qry_get_book_by_id.cfm
51 ms 51 ms 1 /root/website/app_layout.cfm
38 ms 38 ms 1 /root/website/app_globals.cfm
34 ms 34 ms 1 /root/website/site/blocks/layout/dsp_right_column.cfm
24 ms 24 ms 1 /root/website/queries/qry_get_reader_reviews_by_book_id.cfm
21 ms 21 ms 1 /root/website/reader_reviews/dsp_bookshell.cfm
20 ms 10 ms 2 /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
12 ms 12 ms 1 /root/website/queries/qry_get_ezine_by_book_id.cfm
12 ms 12 ms 1 /root/website/site/blocks/dsp_border_first_impressions.cfm
11 ms 11 ms 1 /root/website/queries/qry_get_arcs_for_ad.cfm
10 ms 10 ms 1 /root/website/queries/qry_get_free_flag_by_book_id.cfm
10 ms 10 ms 1 /root/website/site/blocks/dsp_top_book_block.cfm
10 ms 10 ms 1 /root/website/site/blocks/layout/dsp_footer.cfm
9 ms 9 ms 1 /root/website/adzones/showcase_track.cfm
9 ms 9 ms 1 /root/website/queries/qry_get_liked_by_book_id.cfm
8 ms 8 ms 1 /root/website/reader_reviews/dsp_reviews.cfm
6 ms 6 ms 1 /root/website/site/blocks/dsp_book_giveaway.cfm
4 ms 4 ms 1 /root/website/queries/qry_get_book_awards_by_book_id.cfm
4 ms 4 ms 1 /root/website/queries/qry_get_current_competition.cfm
3 ms 1 ms 3 /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_categories_by_book_id.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_author_bookcount.cfm
1 ms 1 ms 1 /root/website/queries/qry_get_current_ezine.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
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_reader_reviews_power_reviewers.cfm
0 ms 0 ms 1 /root/website/reader_reviews/dsp_views.cfm
0 ms 0 ms 1 /root/website/site/blocks/act_book_view_tracking.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_border_booktalk.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_closed_about.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_closed_awards.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_closed_btb.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_closed_readalikes.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_header_newsletter.cfm
0 ms 0 ms 1 /root/website/site/blocks/dsp_wordplay.cfm
0 ms 0 ms 1 /root/website/site/blocks/email_modal.cfm
0 ms 0 ms 1 /root/website/site/blocks/layout/google_tags.cfm
0 ms 0 ms 1 /root/website/site/blocks/layout/header_announcement.cfm
0 ms 0 ms 1 /root/website/site/blocks/layout/main_menu.cfm
0 ms 0 ms 1 /root/website/site/blocks/layout/main_search.cfm
2 ms  STARTUP, PARSING, COMPILING, LOADING, & SHUTDOWN
656 ms  TOTAL EXECUTION TIME
red = over 250 ms average execution time


Exceptions

07:14:03.003 - Expression Exception - in /root/website/site/blocks/dsp_top_book_block.cfm : line 237
	    Variable BOOK_NUMBER is undefined.
	    


SQL Queries

spidercheck (Datasource=bookbrowse_com_new, Time=2ms, Records=1) in /root/website/actions/act_spider_tracker.cfm @ 07:14:03.003
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=1ms, Records=0) in /root/website/queries/qry_get_member_info.cfm @ 07:14:03.003
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 @ 07:14:03.003
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 @ 07:14:03.003
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=1ms, Records=1) in /root/website/queries/qry_get_current_wordplay.cfm @ 07:14:03.003
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 @ 07:14:03.003
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 @ 07:14:03.003
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 @ 07:14:03.003
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 @ 07:14:03.003
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=4ms, Records=1) in /root/website/queries/qry_get_active_obc.cfm @ 07:14:03.003
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 @ 07:14:03.003
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_book_number (Datasource=bookbrowse_com_new, Time=1ms, Records=0) in /root/website/reader_reviews/index.cfm @ 07:14:03.003
SELECT 	ezine_preview_bb_link, ezine_preview_title
		FROM 	ezine_previews
		WHERE 	ezine_preview_number = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 0

get_reader_reviews_power_reviewers (Datasource=bookbrowse_com_new, Time=0ms, Records=50, Cached Query) in /root/website/queries/qry_get_reader_reviews_power_reviewers.cfm @ 07:14:03.003
SELECT 		top 50 reader_review_reviewer_email_address, count(reader_review_reviewer_email_address) as "count"
	FROM 		reader_reviews
	WHERE 		reader_review_reviewer_email_address like '%@%'
	AND 		reader_review_reviewer_email_address <> 'reviews@bookbrowse.com'
	GROUP BY 	reader_review_reviewer_email_address
	
	
	ORDER BY 	count desc
get_book_by_id (Datasource=bookbrowse_com_new, Time=12ms, Records=1) in /root/website/queries/qry_get_book_by_id.cfm @ 07:14:03.003
SELECT		a.book_number, a.book_title, a.book_sub_title, a.book_url, a.book_entry_dt, a.book_short_summary, a.book_excerpt, a.book_jacket_info, a.book_reading_guide, a.book_copyright_info, a.book_notes,
            	b.author_number, b.author_first_name, b.author_last_name, b.author_middle_initial,
            	f.edition_publish_dt AS "hardcover_publish_dt", f.edition_number_of_pages AS "hardcover_number_of_pages", f.edition_isbn AS "hardcover_isbn", f.edition_isbn13 "hardcover_isbn13", f.edition_jacket_image as "hardcover_jacket_image", f.edition_publisher as "hardcover_publisher",
            	g.edition_publish_dt AS "paperback_publish_dt", g.edition_number_of_pages AS "paperback_number_of_pages", g.edition_isbn AS "paperback_isbn", g.edition_isbn13 "paperback_isbn13", g.edition_jacket_image as "paperback_jacket_image", g.edition_publisher as "paperback_publisher",
            	i.author_info_interview, i.author_info_biography,i.author_info_image,
            	CASE WHEN datalength(author_middle_initial) = 1 THEN author_first_name + ' ' + author_middle_initial + ' ' + author_last_name
            		 ELSE author_first_name + ' ' + author_last_name
            		 END "author_name",
            	CASE WHEN 
					(select count(*) from editions where book_number = 4364) = 1
					AND
					(select count(*) from editions where book_number = 4364 and edition_paperback_flag = 1) = 1
				THEN 1
				ELSE 0
				END AS "po_flag",
				(select count(*) from book_author_mapping m where m.author_number = b.author_number)
				+
				(select count(*) from ezine_previews where ezine_preview_bb_author_link = b.author_number and ezine_preview_bb_link =0)
				 as 'author_bookcount',
            	(SELECT CAST(AVG(CAST(rating AS decimal(12,0))) AS decimal(12,1))
				FROM (
					SELECT reader_review_rating AS rating
					FROM reader_reviews
					WHERE book_number = a.book_number
					AND reader_review_rating > 0
					
					UNION ALL
					
					SELECT reading_list_book_rating AS rating
					FROM reading_lists
					WHERE book_number = CAST(a.book_number AS VARCHAR)
					AND reading_list_book_rating > 0
				) combined_ratings
			) "savrating",
			(SELECT COUNT(rating)
				FROM (
					SELECT reader_review_rating AS rating
					FROM reader_reviews
					WHERE book_number = a.book_number
					AND reader_review_rating > 0
					
					UNION ALL
					
					SELECT reading_list_book_rating AS rating
					FROM reading_lists
					WHERE book_number = CAST(a.book_number AS VARCHAR)
					AND reading_list_book_rating > 0
				) combined_ratings
			) as "savrating_count",
            	(select top 1 media_review_rating from media_reviews where book_number = a.book_number and media_review_type_number = 9) as "bbrating",
            	(select cast(AVG(CAST(media_review_rating AS numeric(12,2)))AS decimal(12,1)) from media_reviews where book_number = a.book_number and media_review_type_number <> 7 and media_review_rating > 0) "scritrating",
				(SELECT COUNT(media_review_rating) FROM media_reviews WHERE book_number = a.book_number AND media_review_type_number <> 7 AND media_review_rating > 0) as "scritrating_count",
            	(select top 1 gg.ezine_number from ezine_edition_mapping aa, editions bb, books cc, ezines gg            	
            	where aa.edition_number = bb.edition_number and bb.book_number = cc.book_number and aa.ezine_number = gg.ezine_number 
            	and cc.book_number = a.book_number and gg.ezine_bbsays_flag = 1 and gg.ezine_active_flag = 1) as "ezine_number",
				cgm.category_number,
				cgya.category_number AS "ya_flag"
				
,(select top 1 publisher_holding_company from publishers where (publisher_imprint like f.edition_publisher OR publisher_imprint like g.edition_publisher) AND publisher_holding_company LIKE 'Harper%') AS "publisher_holding_company"		
        
    FROM		books a 
    INNER JOIN	book_author_mapping c ON c.book_number = a.book_number
    INNER JOIN	authors b ON b.author_number = c.author_number  
    INNER JOIN	author_info i ON i.author_number = b.author_number
    
    LEFT JOIN	editions f ON f.book_number = a.book_number AND f.edition_paperback_flag = 0
    LEFT JOIN	editions g ON g.book_number = a.book_number AND g.edition_paperback_flag = 1
    LEFT JOIN	category_book_mapping cgm on cgm.book_number = a.book_number AND cgm.category_number = 48
    LEFT JOIN	category_book_mapping cgya on cgya.book_number = a.book_number AND cgya.category_number = 40
          
    WHERE 		a.book_number = ?
         
    ORDER BY	c.book_author_mapping_number
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

get_media_reviews_by_book_id (Datasource=bookbrowse_com_new, Time=58ms, Records=20) in /root/website/queries/qry_get_book_by_id.cfm @ 07:14:03.003
SELECT		a.media_review_number, 
				a.book_number, 
				a.media_review_type_number, 
				a.media_review_title, 
				a.media_review_rating, 
				a.media_review, 
				a.media_review_old,
	
				CASE WHEN a.media_review_type_number = 9 THEN 	(select top 1 (case when dbo.WordCount(c.ezine_review_2) > 0 then dbo.WordCount(c.ezine_review_2) + dbo.WordCount(c.ezine_extras) 
                                                                                    else dbo.WordCount(c.ezine_review) 
                                                                                    end)
                                                                from ezine_edition_mapping c
                                                                INNER JOIN editions d ON (d.edition_number = c.edition_number)
                                                                INNER JOIN ezines e ON e.ezine_number = c.ezine_number
                                                                WHERE d.book_number = ?
                                                                
                                                                ORDER BY e.ezine_number ASC)
	 			ELSE 0 
	 			END  "wordc",
				
				CASE WHEN a.media_review_type_number = 9 THEN 	(select top 1 reviewer_number
		 														 from ezine_edition_mapping c
		 														 INNER JOIN editions d ON (d.edition_number = c.edition_number)
																 INNER JOIN ezines e ON e.ezine_number = c.ezine_number
		 														 WHERE d.book_number = ?
		 														 AND e.ezine_bbsays_flag = 1
																 ORDER BY d.edition_publish_dt DESC)
	 			ELSE 1
				END "reviewer_number",
				
				CASE WHEN a.media_review_type_number = 9 THEN 	(select top 1 reviewer_first_name + ' ' + reviewer_last_name AS "reviewer_name"
		 														 from ezine_edition_mapping c
		 														 INNER JOIN editions d ON (d.edition_number = c.edition_number)
																 INNER JOIN ezines e ON e.ezine_number = c.ezine_number
																 INNER JOIN reviewers r on r.reviewer_number = c.reviewer_number
		 														 WHERE d.book_number = ?
		 														 AND e.ezine_bbsays_flag = 1
																 ORDER BY d.edition_publish_dt DESC)
	 			END "reviewer_name"
	
	FROM		media_reviews a, media_review_types b
	
	WHERE		a.book_number IN (select distinct c.book_number from categories a, category_book_mapping b, book_author_mapping c where a.category_number = b.category_number and a.category_active_flag = 1 and b.book_number = c.book_number)
	AND			a.book_number = ?
	AND			a.media_review_type_number = b.media_review_type_number
	
	ORDER BY	b.media_review_type_sort_order ASC, media_review_rating DESC, media_review_title ASC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023
Parameter #2(CF_SQL_INTEGER) = 4023
Parameter #3(CF_SQL_INTEGER) = 4023
Parameter #4(CF_SQL_INTEGER) = 4023

get_reader_reviews_by_book_id (Datasource=bookbrowse_com_new, Time=23ms, Records=54) in /root/website/queries/qry_get_reader_reviews_by_book_id.cfm @ 07:14:03.003
select 		a.reader_review_number, a.book_number, a.reader_review_approved_flag, a.reader_review_dt,
				COALESCE(NULLIF(LTRIM(RTRIM(m.discourse_username)), ''), NULLIF(LTRIM(RTRIM(a.reader_review_reviewer_name)), '')) AS reader_review_reviewer_name,
				a.reader_review_reviewer_email_address, a.reader_review_reviewer_from_locale, a.reader_review_recommended, a.reader_review_rating, a.reader_review_title, a.reader_review_description, ISNULL(a.like_count, 0) AS like_count,
    			b.book_title,
    			ISNULL(e.edit_count, 0) AS edit_count,
    			e.last_edit_dt,
    			a.member_number AS review_member_number
    from 		reader_reviews a
    LEFT OUTER JOIN (
    	SELECT reader_review_number, COUNT(*) AS edit_count, MAX(edited_dt) AS last_edit_dt
    	FROM   reader_review_edits
    	GROUP BY reader_review_number
    ) e ON e.reader_review_number = a.reader_review_number
    LEFT OUTER JOIN members m ON m.member_number = a.member_number,
    			books b
    where 		a.book_number IN (select distinct c.book_number from categories a, category_book_mapping b, book_author_mapping c where a.category_number = b.category_number and a.category_active_flag = 1 and b.book_number = c.book_number)
    and 		a.book_number = ?
    and 		a.reader_review_approved_flag = 1
    and 		a.book_number = b.book_number
    

	order by a.reader_review_rating DESC, a.reader_review_dt DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

get_book_awards_by_book_id (Datasource=bookbrowse_com_new, Time=2ms, Records=0) in /root/website/queries/qry_get_book_awards_by_book_id.cfm @ 07:14:03.003
select 		c.book_awards_category_number, c.book_awards_category_name, c.book_awards_category_sort_order,
				m.book_awards_mapping_number, m.book_award_dt,
                a.book_award_number, a.book_award_image, a.book_award_name
                
                
	from 		book_awards_mapping m
	inner join 	book_awards_category c on c.book_awards_category_number = m.book_awards_category_number
    inner join	book_awards a on a.book_award_number = c.book_award_number
    
	where 		m.book_number = ?
    
    order by	c.book_awards_category_sort_order ASC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

get_bb_runner_ups (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/queries/qry_get_book_awards_by_book_id.cfm @ 07:14:03.003
select	book_number
    
    from	category_book_mapping a, categories b, top_categories t
    
    where	t.top_category_number = b.top_category_number
    and		b.category_number = a.category_number
    and		t.top_category_number = 9
    and		a.book_number = ?
    and		b.category_visible_flag = 1
	and		a.book_number not in (	select book_number 
    									from 		book_awards_mapping m
													inner join 	book_awards_category c on c.book_awards_category_number = m.book_awards_category_number
    												inner join	book_awards a on a.book_award_number = c.book_award_number
                                    	where m.book_number = ? 
                                    	and a.book_award_number = 7)
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023
Parameter #2(CF_SQL_INTEGER) = 4023

get_liked_by_book_id (Datasource=bookbrowse_com_new, Time=8ms, Records=6) in /root/website/queries/qry_get_liked_by_book_id.cfm @ 07:14:03.003
SELECT 		b.book_title, b.book_number,
    			c.book_title "referenced_book_title", c.book_number AS "liked_book_number", c.book_short_summary as "liked_short_summary",
            	e.*,
                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 "author_name",
				(select top 1 edition_publish_dt from editions where editions.book_number = c.book_number order by edition_publish_dt DESC) as 'sortdate',
				(select count(*) from book_author_mapping m where m.author_number = d.author_number)
				+
				(select count(*) from ezine_previews where ezine_preview_bb_author_link = d.author_number and ezine_preview_bb_link =0)
				 as 'liked_author_bookcount'
                
	FROM 		liked a
	INNER JOIN	books b ON b.book_number = a.book_number
	INNER JOIN	books c ON c.book_number = a.liked_book_number
	INNER JOIN	book_author_mapping d ON c.book_number = d.book_number
	INNER JOIN	authors e ON d.author_number = e.author_number
    
    WHERE 		a.book_number = ?
    
	ORDER BY 	sortdate desc, c.book_title
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

get_categories_by_book_id (Datasource=bookbrowse_com_new, Time=2ms, Records=8) in /root/website/queries/qry_get_categories_by_book_id.cfm @ 07:14:03.003
select 		distinct a.category_number, a.top_category_number, a.category_name, a.category_description, a.category_meta_keywords, a.category_active_flag, a.category_visible_flag, a.category_member_only_flag, a.category_qry_template, a.category_sort_order, a.category_tag_size,
    			b.*
	
    from 		categories a
	left join	top_categories b on a.top_category_number = b.top_category_number
	left join	category_book_mapping c on c.category_number = a.category_number
	
    where 		a.category_active_flag = 1
    and 		a.category_visible_flag = 1
	and 		c.book_number = ?
	

    order by 	b.top_category_sort_order, b.top_category_name, a.category_sort_order, a.category_name
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

bb_review (Datasource=, Time=0ms, Records=1) in /root/website/reader_reviews/index.cfm @ 07:14:03.003
SELECT media_review, reviewer_number from get_media_reviews_by_book_id where media_review_type_number = 9
get_arc_idfk (Datasource=bookbrowse_com_new, Time=4ms, Records=1) in /root/website/queries/qry_get_discussion_by_id.cfm @ 07:14:03.003
SELECT 		a.arc_forumidfk,a.discourse_flag
    FROM 		arcs a
    INNER JOIN 	ezine_previews e on e.ezine_preview_number = a.ezine_preview_number
    
	
        WHERE 		e.ezine_preview_bb_link = ? 
    AND DATALENGTH(a.arc_forumidfk) > 0 AND arc_obc_flag=1
Query Parameter Value(s) -
Parameter #1(cf_sql_integer) = 4023

get_arc_idfk_legacy (Datasource=bookbrowse_com_new, Time=4ms, Records=1) in /root/website/queries/qry_get_discussion_by_id.cfm @ 07:14:03.003
SELECT 		a.arc_forumidfk,a.discourse_flag
    FROM 		arcs a
    INNER JOIN 	ezine_previews e on e.ezine_preview_number = a.ezine_preview_number
    
	
        WHERE 		e.ezine_preview_bb_link = ? 
    AND DATALENGTH(a.arc_forumidfk) > 0 AND arc_obc_flag=1 AND a.discourse_flag = 0
Query Parameter Value(s) -
Parameter #1(cf_sql_integer) = 4023

obc_discussions (Datasource=booktalk_new, Time=301ms, Records=26) in /root/website/queries/qry_get_discussion_by_id.cfm @ 07:14:03.003
SELECT 		t.name,
                m.title, m.body,
                u.username, t.id,
				(SELECT COUNT(*) from booktalk_messages where threadidfk = t.id) AS	"responses"
                
    FROM 		booktalk_forums f
    INNER JOIN	booktalk_threads t on t.forumidfk = f.id
    INNER JOIN	booktalk_messages m on m.posted = t.lastpostcreated
    INNER JOIN	booktalk_users u on u.id = m.useridfk
    
    WHERE 	f.id = ?
    AND 	f.active = 1
	AND		t.active = 1
    
    ORDER BY t.name, t.messages DESC
Query Parameter Value(s) -
Parameter #1(cf_sql_varchar) = B31FE212-D3AF-7F55-7EE835CC4DF9F6E1

searchResults (Datasource=bookbrowse_com_new, Time=85ms, Records=1) in /root/website/queries/qry_get_discussion_by_id.cfm @ 07:14:03.003
SELECT book_number, post_id, topic_id, blurb, username, topic_title
					FROM DiscourseSearchResults
					
        WHERE 		book_number = ? 
                    AND topic_id IS NOT NULL
Query Parameter Value(s) -
Parameter #1(cf_sql_varchar) = 4023

get_ezine_type (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/queries/qry_get_ezine_by_book_id.cfm @ 07:14:03.003
SELECT a.ezine_type_number
	FROM ezines a
	WHERE a.ezine_number = 1
get_ezine_by_book_id (Datasource=bookbrowse_com_new, Time=9ms, Records=1) in /root/website/queries/qry_get_ezine_by_book_id.cfm @ 07:14:03.003
SELECT TOP 1  
                a.ezine_short_title, a. ezine_boxed_content_title, a.ezine_boxed_content, a.ezine_review, a.ezine_review_2,
                b.edition_paperback_flag, b.edition_publish_dt, b.edition_isbn,
                c.book_title, c.book_sub_title, c.book_reading_guide, c.book_excerpt, c.book_number,
                e.author_first_name, e.author_middle_initial, e.author_last_name, e.author_number, 
                f.author_info_biography, 
                g.ezine_number, g.ezine_dt, g.ezine_bbsays_flag,
				i.article_category_number, i.article_category_name
		
	FROM    	ezine_edition_mapping AS a 
		
	INNER JOIN 	editions AS b ON (a.edition_number = b.edition_number)
	INNER JOIN 	books AS c ON (b.book_number = c.book_number )
	INNER JOIN 	book_author_mapping AS d ON (c.book_number = d.book_number )
	INNER JOIN 	authors AS e ON (d.author_number = e.author_number )
	INNER JOIN 	author_info AS f ON (e.author_number = f.author_number)
	INNER JOIN 	ezines AS g ON (a.ezine_number = g.ezine_number)
	LEFT JOIN	article_ezine_edition_mapping h ON h.ezine_edition_mapping_number = a.ezine_edition_mapping_number
	LEFT JOIN	article_categories i ON i.article_category_number = h.article_category_number

	WHERE		c.book_number = ?
	AND			g.ezine_bbsays_flag = 1
	AND			g.ezine_active_flag = 1
	
	
	ORDER BY 		g.ezine_dt DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

check_permalink (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/queries/qry_get_free_flag_by_book_id.cfm @ 07:14:03.003
SELECT 	count(*) as "count"
    FROM 	books
    WHERE 	book_number = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 0

check_editors_choice (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/queries/qry_get_free_flag_by_book_id.cfm @ 07:14:03.003
SELECT 	count(*) as "count"
    FROM 	books
    WHERE 	book_number = ?
    AND		book_number IN (SELECT		top 4 a.book_number
                            FROM		editors_choice a 
                            WHERE		editors_choice_dt < getdate()
                            ORDER BY	editors_choice_dt DESC)
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

check_free_ezine (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/queries/qry_get_free_flag_by_book_id.cfm @ 07:14:03.003
SELECT 		count(*) as "count"
    FROM    	ezine_edition_mapping AS a
    INNER JOIN 	ezines b ON b.ezine_number = a.ezine_number
    INNER JOIN	editions c ON c.edition_number = a.edition_number
    WHERE 		c.book_number = ?
	AND			ezine_edition_free_review_flag = 1
	AND			dateadd(ww,4,b.ezine_dt) > getdate()
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

check_cat_73 (Datasource=bookbrowse_com_new, Time=0ms, Records=1) in /root/website/queries/qry_get_free_flag_by_book_id.cfm @ 07:14:03.003
SELECT 		count(*) as "count"
    FROM    	books AS b
    INNER JOIN 	category_book_mapping AS c ON c.book_number = b.book_number
    WHERE 		b.book_number = ?
	AND			c.category_number = 73
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

get_ezine_status (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/queries/qry_get_free_flag_by_book_id.cfm @ 07:14:03.003
SELECT 	top 1 g.ezine_active_flag, ezine_dt, book_title
FROM		ezine_edition_mapping AS a 
INNER JOIN	editions AS b ON (a.edition_number = b.edition_number)
INNER JOIN	books AS c ON (b.book_number = c.book_number)
INNER JOIN	ezines AS g ON (a.ezine_number = g.ezine_number)
WHERE		c.book_number = ?
ORDER BY	g.ezine_dt DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

check_old_ezine (Datasource=bookbrowse_com_new, Time=0ms, Records=1) in /root/website/queries/qry_get_free_flag_by_book_id.cfm @ 07:14:03.003
SELECT 		count(*) as "count"
    FROM    	ezine_edition_mapping AS a
    INNER JOIN 	ezines b ON b.ezine_number = a.ezine_number
    INNER JOIN	editions c ON c.edition_number = a.edition_number
    WHERE 		c.book_number = ?
	AND			datediff(mm,b.ezine_dt,getdate()) > 12
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

get_ezine_status (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/queries/qry_get_free_flag_by_book_id.cfm @ 07:14:03.003
SELECT 	top 1 g.ezine_active_flag, ezine_dt, book_title
FROM		ezine_edition_mapping AS a 
INNER JOIN	editions AS b ON (a.edition_number = b.edition_number)
INNER JOIN	books AS c ON (b.book_number = c.book_number)
INNER JOIN	ezines AS g ON (a.ezine_number = g.ezine_number)
WHERE		c.book_number = ?
ORDER BY	g.ezine_dt DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

get_author_bookcount (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/queries/qry_get_author_bookcount.cfm @ 07:14:03.003
select		b.book_title as "title", 1 as "bb_flag", b.book_number as "number"
        from		book_author_mapping a
		inner join	books b on b.book_number = a.book_number
        where		a.author_number = ?
union
    	select		c.ezine_preview_title as "title", 0 as "bb_flag", c.ezine_preview_number as "number"
        from		ezine_previews c
        where		c.ezine_preview_bb_author_link = ?
        and			c.ezine_preview_bb_link = 0
		
order by title DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 3268
Parameter #2(CF_SQL_INTEGER) = 3268

get_coauthor (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/actions/udfs.cfm @ 07:14:03.003
select 		book_number, 
            			CASE	WHEN datalength(d.author_middle_initial) > 1 
				                THEN d.author_first_name + ' ' + d.author_middle_initial + ' ' + d.author_last_name
				                ELSE d.author_first_name + ' ' + d.author_last_name
                        END "author",
                        d.author_number
            from		book_author_mapping e
            inner join	authors d ON e.author_number = d.author_number
            where		e.book_number = ?
			order by	book_author_mapping_number ASC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

get_book_image (Datasource=bookbrowse_com_new, Time=0ms, Records=1) in /root/website/actions/udfs.cfm @ 07:14:03.003
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) = 4023

get_book_image (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/actions/udfs.cfm @ 07:14:03.003
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) = 4023

get_coauthor (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/actions/udfs.cfm @ 07:14:03.003
select 		book_number, 
            			CASE	WHEN datalength(d.author_middle_initial) > 1 
				                THEN d.author_first_name + ' ' + d.author_middle_initial + ' ' + d.author_last_name
				                ELSE d.author_first_name + ' ' + d.author_last_name
                        END "author",
                        d.author_number
            from		book_author_mapping e
            inner join	authors d ON e.author_number = d.author_number
            where		e.book_number = ?
			order by	book_author_mapping_number ASC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 4023

IsPowerReviewer (Datasource=, Time=1ms, Records=0) in /root/website/reader_reviews/dsp_reviews.cfm @ 07:14:03.003
select *
			from get_reader_reviews_power_reviewers
			where reader_review_reviewer_email_address LIKE 'marilynhedrick@gmail.com'
IsPowerReviewer (Datasource=, Time=0ms, Records=0) in /root/website/reader_reviews/dsp_reviews.cfm @ 07:14:03.003
select *
			from get_reader_reviews_power_reviewers
			where reader_review_reviewer_email_address LIKE 'Susan43@icloud.com'
IsPowerReviewer (Datasource=, Time=0ms, Records=0) in /root/website/reader_reviews/dsp_reviews.cfm @ 07:14:03.003
select *
			from get_reader_reviews_power_reviewers
			where reader_review_reviewer_email_address LIKE 'earleyjennettmarie@hotmail.com'
IsPowerReviewer (Datasource=, Time=0ms, Records=0) in /root/website/reader_reviews/dsp_reviews.cfm @ 07:14:03.003
select *
			from get_reader_reviews_power_reviewers
			where reader_review_reviewer_email_address LIKE 'munchkins5354@msn.com'
IsPowerReviewer (Datasource=, Time=0ms, Records=0) in /root/website/reader_reviews/dsp_reviews.cfm @ 07:14:03.003
select *
			from get_reader_reviews_power_reviewers
			where reader_review_reviewer_email_address LIKE 'ctaylor1202@gmail.com'
IsPowerReviewer (Datasource=, Time=1ms, Records=0) in /root/website/reader_reviews/dsp_reviews.cfm @ 07:14:03.003
select *
			from get_reader_reviews_power_reviewers
			where reader_review_reviewer_email_address LIKE 'smleonetti@gmail.com'
IsPowerReviewer (Datasource=, Time=0ms, Records=0) in /root/website/reader_reviews/dsp_reviews.cfm @ 07:14:03.003
select *
			from get_reader_reviews_power_reviewers
			where reader_review_reviewer_email_address LIKE 'phoenix721@sbcglobal.net'
IsPowerReviewer (Datasource=, Time=0ms, Records=0) in /root/website/reader_reviews/dsp_reviews.cfm @ 07:14:03.003
select *
			from get_reader_reviews_power_reviewers
			where reader_review_reviewer_email_address LIKE 'laureen.strohl@comcast.net'
get_arcs_for_ad (Datasource=bookbrowse_com_new, Time=4ms, Records=0) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 07:14:03.003
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=5ms, Records=3) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 07:14:03.003
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 @ 07:14:03.003
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 @ 07:14:03.003
SELECT	a.adid,	adweight
        FROM	adsystem a
        WHERE	a.section = ? 
        AND 	a.active  = 1 
        AND		a.start_date <= GETDATE()	
        
        AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
        AND (select count(*) from ad_category_mapping where datalength(category_number) >= 1 and adid = a.adid) = 0
Query Parameter Value(s) -
Parameter #1(CF_SQL_VARCHAR) = adzone6

get_type (Datasource=bookbrowse_com_new, Time=1ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 07:14:03.003
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=5ms, Records=1) in /root/website/site/blocks/dsp_book_giveaway.cfm @ 07:14:03.003
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 @ 07:14:03.003
SELECT 	*
    FROM 	free_newsletters
get_ads (Datasource=bookbrowse_com_new, Time=2ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 07:14:03.003
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 @ 07:14:03.003
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 @ 07:14:03.003
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/reader_reviews/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=CFID=4091136; CFTOKEN=1e5951a60bca3fde-1450D5C0-0570-B220-474339BFCDFDDE7C; CFCLIENT_BOOKBROWSE=order%3Dp%23member%5Fnumber%3D0%23member%5Factive%5Fflag%3D0%23member%5Flogged%5Fin%5Fflag%3D0%23library%5Fuser%5Fflag%3D0%23view%3Dbooks%23; CFGLOBALS=urltoken%3DCFID%23%3D4091136%26CFTOKEN%23%3D1e5951a60bca3fde%2D1450D5C0%2D0570%2DB220%2D474339BFCDFDDE7C%23lastvisit%3D%7Bts%20%272026%2D06%2D01%2007%3A13%3A58%27%7D%23hitcount%3D4%23timecreated%3D%7Bts%20%272026%2D06%2D01%2007%3A13%3A48%27%7D%23cftoken%3D1e5951a60bca3fde%2D1450D5C0%2D0570%2DB220%2D474339BFCDFDDE7C%23cfid%3D4091136%23
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=/book_number/4023/page/2/order/bw/american-dirt
PATH_TRANSLATED=/root/website/reader_reviews/index.cfm
QUERY_STRING=
REMOTE_ADDR=127.0.0.1
REMOTE_HOST=127.0.0.1
REMOTE_USER=
REQUEST_METHOD=GET
SCRIPT_NAME=/reader_reviews/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=4091136
cftoken=1e5951a60bca3fde-1450D5C0-0570-B220-474339BFCDFDDE7C
hitcount=4
lastvisit={ts '2026-06-01 07:13:58'}
library_user_flag=0
member_active_flag=0
member_logged_in_flag=0
member_number=0
order=p
timecreated={ts '2026-06-01 07:13:48'}
urltoken=CFID=4091136&CFTOKEN=1e5951a60bca3fde-1450D5C0-0570-B220-474339BFCDFDDE7C
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#=4091136&CFTOKEN#=1e5951a60bca3fde-1450D5C0-0570-B220-474339BFCDFDDE7C#lastvisit={ts '2026-06-01 07:13:58'}#hitcount=4#timecreated={ts '2026-06-01 07:13:48'}#cftoken=1e5951a60bca3fde-1450D5C0-0570-B220-474339BFCDFDDE7C#cfid=4091136#
CFID=4091136
CFTOKEN=1e5951a60bca3fde-1450D5C0-0570-B220-474339BFCDFDDE7C
Session Variables:
cfid=4091136
cftoken=1e5951a60bca3fde-1450D5C0-0570-B220-474339BFCDFDDE7C
sessionid=BOOKBROWSE_4091136_1e5951a60bca3fde-1450D5C0-0570-B220-474339BFCDFDDE7C
urltoken=CFID=4091136&CFTOKEN=1e5951a60bca3fde-1450D5C0-0570-B220-474339BFCDFDDE7C
URL Parameters:
american-dirt=
book_number=4023
order=bw
page=2
Debug Rendering Time: 9 ms