Book Summary and Reviews of The Spy Lover by Kiana Davenport

The Spy Lover by Kiana Davenport

The Spy Lover

by Kiana Davenport

  • Critics' Consensus (3):
  • Readers' Rating (71):
  • Published:
  • Aug 2012, 303 pages
  • Rate this book

About this book

Book Summary

Reminiscent of Cold Mountain or Daughter of Fortune, this extraordinary tale emanates from acclaimed author Kiana Davenport's own family history, and is a moving exploration of the horrors of war and the transcendence of love.

Thrust into the savagery of the Civil War, a Chinese immigrant serving in the Union Army, a nurse doubling as a spy for the North, and a one-armed Confederate cavalryman find their lives inextricably entwined.

Fleeing drought and famine in China, Johnny Tom arrives in America with dreams of becoming a citizen. Having survived vigilantes hunting "yellow dogs" and slave auction- blocks, Johnny is kidnapped from his Mississippi village by Confederate soldiers, taken from his wife and daughter, and forced to fight for the South. Eventually defecting to the Union side, he is promised American citizenship in exchange for his loyal services. But first Johnny must survive the butchery of battles and the cruelties inflicted on non-white soldiers.

Desperate to find Johnny, his daughter, Era, is enlisted as a spy. She agrees to work as a nurse at Confederate camps while scouting for the North. Amidst the unspeakable carnage of wounded soldiers, she finds solace in Warren Petticomb, a cavalryman who lost an arm at Shiloh. As devastation mounts in both armies, Era must choose where her loyalties lie - with her beloved father in the North, or with the man who passionately sustains her in the South.

A novel of extraordinary scope that will stand as a defining work on the Chinese immigrant experience, The Spy Lover is a paean to the transcendence of love and the resilience of the human spirit.

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!

Reviews

Media Reviews

"Starred Review. Giving resonance and impact to this story are the compelling characters who tap readers' emotions; the stark realities of battle; and the heroic men and women on both sides who persevered despite horrific conditions. Davenport, author of House of Many Gods (2006), writes from the heart, and yours will be moved." - Booklist

"Although at times Davenport's highly wrought prose threatens to overwhelm her narrative, she manages to channel it into a perfectly Romantic, tormented story." - Publishers Weekly

"Beautiful writing...a page turner...The novel emanates from Davenport's own family history, ancestors who fought in the War...as she tells the story of a woman and her lover, the conflict between love, conscience and determination...I have no hesitation in recommending The Spy Lover to anyone who enjoys stories of the Civil War as well as of genuine conflicts, love and dedication...It will go into a special niche of historical fiction and ...likely become a classic like Cold Mountain." - Martha Boltz of The Washington Times

"(In) The Spy Lover, (Davenport) pulls from her Alabama-born father's family history to tell a gripping Civil War story about three complicated, suffering people - a nurse who's spying for the Union behind enemy lines, a Chinese immigrant who escapes his conscription into the Confederacy to fight for the Union instead, and a wounded Confederate cavalryman. Davenport doesn't buffer the brutality of war, presenting a stark portrayal of its horrors and the damage it can inflict on body and soul in her well-researched tale." - Bookpage

"Davenport delivers a surprisingly heartwarming ending, which will please readers. Civil War buffs will also appreciate and be impressed by the author's intricate depiction of the conflict." - Bookloons.com

"A page turner, like Davenport's other fiction, The Spy Lover is full of suspense, yet it also plunges deep. With compassion toward all her characters, whether they fight for the North or the South, Davenport dramatizes the agony of divided loyalties and the brutalities of war...High drama, high tension, high romance." - Alix Kates Shulman, Bestselling author of Memoirs of an Ex-Prom Queen, and Menage

"This author does a fantastic job presenting the scenery, pain, and depth of the Civil War and how it truly split loved ones apart. Sometimes in horrific detail, especially the battle of Gettysburg, this author makes it feel as if the reader is actually on that field experiencing every death. Having these characters based on the very real souls of the author's own ancestors who came to America during the 1800s, made the story even more compelling, and is highly recommended."- Amy Lignor, author of Tallent & Lowery - 13 for Suspense Magazine

This information about The Spy Lover was first featured in "The BookBrowse Review" - BookBrowse's membership magazine, and in our weekly "Publishing This Week" newsletter. Publication information is for the USA, and (unless stated otherwise) represents the first print edition. The reviews are necessarily limited to those that were available to us ahead of publication. If you are the publisher or author and feel that they do not properly reflect the range of media opinion now available, send us a message with the mainstream reviews that you would like to see added.

Any "Author Information" displayed below reflects the author's biography at the time this particular book was published.

Reader Reviews

Write your own reviewwrite your own review

Tracy_B

The Spy Lover
I felt as though I was right there in the U.S. Civil war it was very descriptive, terrifying, lonely, elating & compelling. This made it necessary to put the book down now and then. Kiana's development of the 3 main characters was to head each chapter with their name, time & place a vivid past or present view of their life. I have found myself reading other books about the U.S. Civil War in each one there is a new piece of information, here it was the poppy fields and addiction. Thank you for introducing me to this wonderful author.

Mary O. (Boston, MA)

A true delight!
I LOVED this book! Set in the Civil War, it portrays three main characters - a Chinese immigrant Union soldier, his daughter who is an army nurse in search of her missing father, and a Confederate officer who falls in love with his nurse. Beautifully written, it describes all the horrific aspects of war as well as the complications of love and human emotion. I highly recommend this book to all. It is an absolute pleasure!

Judith W. (Brooklyn, NY)

Wish I could have read it in one sitting
I couldn't put this book down. Not only were the characters compelling and the plot engrossing, but I learned something new. I was not aware of the Chinese presence in the Union Army. My awareness of their history at that time was limited to the building of the railroads in the far west, so found this a good addition to my fund of knowledge. Will look for other books by this author as I love her writer's voice.

Lora O. (Antioch, CA)

Beautiful Story from a Unique Perspective, but with a silly title
On this sesquicentennial of the Civil War, I thought no author could come up with anything new, but Ms. Davenport did just that. I have never read about Chinese soldiers, but apparently there many who honorably fought for both sides. This story is heartbreaking, from the point of view of the Chinese father fighting for the north and his daughter, of Chinese and Native American working as a nurse for the south, sharing secrets with the Northerners in order to find her father and avenge her treatment by the confederates who killed her mother, raped her and burned their village. Neither Johnny Tom or Era had any reason for loyalty to any aspect of America, and the cruel treatment of Era, as a non-white continued from coast to coast long after the war ended. The author does not sugarcoat the war, the battles or the horrific conditions in the field hospitals and the book is painful and disturbing to read. The authors depiction of how the war and the act of killing changes a man is especially well wrought in the character of Warren, the confederate soldier that loves Era. The three characters are grievously damaged by their experiences yet the author makes clear that underneath there is still an inner core of honor, decency and even a faint hope of beauty and meaning in the world. There is a wonderful section about Era and other southern women working in poppy fields hidden in the fields to make opium to treat the sick and injured soldiers. I was deeply moved by this story about inhumanity, the purported fight to end slavery, the cost of loyalty, the love and solidarity of soldiers taking care of each other, honor and love.

I do think however that the title is unfortunate. If I hadn't heard of the author, I would never look
at a this book, assuming it would be a cheesy romance or Bond type thriller instead of the lovely, profound, moving story that it is.

I think this would be a wonderful book for a discussion.

Kristen_H

Civil Review
Absolutely loved this book!! The author did a great job, her accuracy with the civil war history was tremendous. Her description of the battles that were fought during the civil war was interesting and explained how the soldiers felt and how they dealt with such a brutal war. I would recommend this book to anybody who is a civil war enthusiast - great details but told in a familiar way. At the end one will feel very much a part of Ms. Davenport's family.

Judith M. (San Diego, CA)

Horrifying yet Compelling
This is not your glory depiction of the War Between the States. It is graphic, emotional, introduces unknown to me facts about Chinese fighting in the war and rings true. I have always felt my letters written home by family members at the end of the war and their release from Union prisoner of war camps were sad and poignant, but this book helped me realize what they really went through.

...32 more reader reviews

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!

Author Information

Kiana Davenport

Kiana Davenport is the author of the best-selling novels House of Many Gods, Song of the Exile, and Shark Dialogues, and two story collections, House of Skin and Cannibal Nights. A Native Hawaiian, her novels and stories have won numerous awards and have been translated into twenty languages.

Visit her at KianaDavenport.com

More Author Information

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

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

Happiness belongs to the self sufficient

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 /bb_briefs/detail/index.cfm
Time Stamp 01-Jun-26 02:38 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
1780281489423 ms 1.78028148942E+012 ms 1 /root/website/app_server.cfm
1596 ms 1596 ms 1 /root/website/bb_briefs/detail/index.cfm
425 ms 106 ms 4 /root/website/adsystem/adsystem_mod.cfm
402 ms 402 ms 1 /root/website/bb_briefs/detail/dsp_main.cfm
384 ms 384 ms 1 /root/website/app_layout.cfm
367 ms 367 ms 1 /root/website/queries/qry_get_discussion_by_id.cfm
322 ms 322 ms 1 /root/website/site/blocks/layout/dsp_right_column.cfm
235 ms 235 ms 1 /root/website/adzones/AdZone6.cfm
126 ms 126 ms 1 /root/website/queries/qry_get_briefs_reader_rating.cfm
123 ms 123 ms 1 /root/website/app_globals.cfm
92 ms 92 ms 1 /root/website/adzones/AdZone3.cfm
83 ms 21 ms 4 /root/website/site/blocks/membership_advantages.cfm
80 ms 20 ms 4 /root/website/queries/qry_get_member_account_types.cfm
75 ms 75 ms 1 /root/website/site/blocks/dsp_border_first_impressions.cfm
74 ms 74 ms 1 /root/website/queries/qry_get_reader_reviews_by_preview_number.cfm
67 ms 67 ms 1 /root/website/adzones/AdZone11.cfm
61 ms 61 ms 1 /root/website/queries/qry_get_arcs_for_ad.cfm
49 ms 49 ms 1 /root/website/queries/qry_get_obc_number.cfm
48 ms 48 ms 1 /root/website/site/blocks/layout/dsp_footer.cfm
47 ms 47 ms 1 /root/website/adzones/showcase_track.cfm
44 ms 44 ms 1 /root/website/queries/qry_get_active_obc.cfm
29 ms 29 ms 1 /root/website/queries/qry_get_author_bookcount.cfm
19 ms 19 ms 1 /root/website/queries/qry_get_liked_by_brief_id.cfm
19 ms 19 ms 1 /root/website/queries/qry_get_preview_by_id.cfm
17 ms 17 ms 1 /root/website/queries/qry_get_current_competition.cfm
17 ms 17 ms 1 /root/website/queries/qry_get_current_wordplay.cfm
15 ms 15 ms 1 /root/website/act_check_login.cfm
15 ms 15 ms 1 /root/website/queries/qry_get_member_info.cfm
12 ms 12 ms 1 /root/website/site/blocks/dsp_book_giveaway.cfm
11 ms 11 ms 1 /root/website/actions/adstatus.cfm
8 ms 8 ms 1 /root/website/queries/qry_get_books_by_briefs_category.cfm
7 ms 1 ms 5 /root/website/actions/act_spider_tracker.cfm
6 ms 6 ms 1 /root/website/queries/qry_get_preview_awards_by_id.cfm
5 ms 5 ms 1 /root/website/site/blocks/layout/dsp_header.cfm
3 ms 3 ms 1 /root/website/site/blocks/layout/main_menu.cfm
2 ms 2 ms 1 /root/website/site/blocks/layout/main_search.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/dsp_top_brief_block.cfm
1 ms 1 ms 1 /root/website/site/blocks/layout/dsp_bottom_block.cfm
1 ms 1 ms 1 /root/website/site/blocks/layout/head.cfm
0 ms 0 ms 1 /root/website/Application.cfm
0 ms 0 ms 1 /root/website/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_free_newsletters.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_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
1 ms  STARTUP, PARSING, COMPILING, LOADING, & SHUTDOWN
1597 ms  TOTAL EXECUTION TIME
red = over 250 ms average execution time


SQL Queries

spidercheck (Datasource=bookbrowse_com_new, Time=5ms, Records=1) in /root/website/actions/act_spider_tracker.cfm @ 02:38:09.009
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=14ms, Records=0) in /root/website/queries/qry_get_member_info.cfm @ 02:38:09.009
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=10ms, Records=2) in /root/website/actions/adstatus.cfm @ 02:38:09.009
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 @ 02:38:09.009
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=17ms, Records=1) in /root/website/queries/qry_get_current_wordplay.cfm @ 02:38:09.009
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=10ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 02:38:09.009
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=6ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 02:38:09.009
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 @ 02:38:09.009
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=7ms, Records=0) in /root/website/queries/qry_get_active_obc.cfm @ 02:38:09.009
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=9ms, Records=1) in /root/website/queries/qry_get_active_obc.cfm @ 02:38:09.009
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=26ms, Records=4) in /root/website/queries/qry_get_active_obc.cfm @ 02:38:09.009
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_preview_by_id (Datasource=bookbrowse_com_new, Time=19ms, Records=1) in /root/website/queries/qry_get_preview_by_id.cfm @ 02:38:09.009
select 			a.ezine_preview_number,
				a.ezine_number, 
				a.ezine_preview_category_number, 
				a.ezine_preview_title, 
				a.ezine_preview_subtitle, 
				a.ezine_preview_author, 
				a.ezine_preview_publisher,
				a.ezine_preview_publish_dt,
				a.ezine_preview_number_of_pages, 
				a.ezine_preview_jacket_image,
				a.ezine_preview_reviews,
				a.ezine_preview_short_summary,
				a.ezine_preview_jacket_desc,
				a.ezine_preview_reading_guide,
				a.ezine_preview_bb_comments, 
				a.ezine_preview_isbn,
				a.ezine_preview_isbn13,
				a.ezine_preview_rating,
				a.ezine_preview_bb_link,
                a.ezine_preview_bb_author_link,
                a.ezine_preview_firsts_flag,
                a.ezine_preview_reading_level,
                a.ezine_preview_paperback_flag,
				b.*,
                c.ezine_dt, c.ezine_description
,(select publisher_holding_company from publishers where ezine_preview_publisher like publisher_imprint AND publisher_holding_company LIKE 'Harper%') AS "publisher_holding_company"		
 				
from ezine_previews a 
inner join ezine_preview_categories b ON b.ezine_preview_category_number = a.ezine_preview_category_number
left join ezines c ON c.ezine_number = a.ezine_number

where ezine_preview_number = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 7892

get_preview_awards_by_id (Datasource=bookbrowse_com_new, Time=6ms, Records=0) in /root/website/queries/qry_get_preview_awards_by_id.cfm @ 02:38:09.009
select a.book_award_number, a.book_award_name, a.book_award_image, c.book_award_dt
    from book_awards a 
    inner join book_awards_category b on b.book_award_number = a.book_award_number
    inner join book_awards_mapping c on c.book_awards_category_number = b.book_awards_category_number
    where ezine_preview_number =  ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 7892

get_briefs_reader_rating (Datasource=bookbrowse_com_new, Time=125ms, Records=1) in /root/website/queries/qry_get_briefs_reader_rating.cfm @ 02:38:09.009
SELECT	(CAST(AVG(CAST(rating AS numeric(12,0))) AS numeric(12,0)))+
				(CASE WHEN right(CAST(AVG(CAST(rating AS numeric(12,2))) AS numeric(12,2)),2) > 25 AND right(CAST(AVG(CAST(rating AS numeric(12,2))) AS numeric(12,2)),2) < 50 THEN 0.5
				 WHEN right(CAST(AVG(CAST(rating AS numeric(12,2))) AS numeric(12,2)),2) >= 50 AND right(CAST(AVG(CAST(rating AS numeric(12,2))) AS numeric(12,2)),2) < 75 THEN -0.5
			ELSE 0
			END) AS "avrating",
            count(rating) as "ratcount"
            
	FROM (
		SELECT reader_review_rating AS rating
		FROM reader_reviews
		WHERE ezine_preview_number = ?
		
		AND reader_review_rating > 0
		
		UNION ALL
		
		SELECT reading_list_book_rating AS rating
		FROM reading_lists
		WHERE book_number LIKE 'p%'
		AND TRY_CAST(SUBSTRING(book_number, 2, LEN(book_number)) AS INT) = ?
		AND reading_list_book_rating > 0
		AND TRY_CAST(SUBSTRING(book_number, 2, LEN(book_number)) AS INT) IS NOT NULL
	) combined_ratings
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 7892
Parameter #2(CF_SQL_INTEGER) = 7892

get_reader_reviews_by_preview_number (Datasource=bookbrowse_com_new, Time=70ms, Records=38) in /root/website/queries/qry_get_reader_reviews_by_preview_number.cfm @ 02:38:09.009
SELECT 		a.reader_review_number, a.book_number, a.ezine_preview_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.ezine_preview_title,
    			ISNULL(e.edit_count, 0) AS edit_count,
    			e.last_edit_dt,
    			a.member_number AS review_member_number
    FROM 		reader_reviews a
    INNER JOIN	ezine_previews b ON a.ezine_preview_number = b.ezine_preview_number
    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
	WHERE 		a.ezine_preview_number = ?
    AND			a.book_number = 0
    AND 		a.reader_review_approved_flag = 1
    

	ORDER BY a.reader_review_rating DESC, a.reader_review_dt DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 7892

get_arc_idfk (Datasource=bookbrowse_com_new, Time=19ms, Records=0) in /root/website/queries/qry_get_discussion_by_id.cfm @ 02:38:09.009
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_number = ? 
    AND DATALENGTH(a.arc_forumidfk) > 0 AND arc_obc_flag=1
Query Parameter Value(s) -
Parameter #1(cf_sql_integer) = 7892

get_arc_idfk_legacy (Datasource=bookbrowse_com_new, Time=14ms, Records=0) in /root/website/queries/qry_get_discussion_by_id.cfm @ 02:38:09.009
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_number = ? 
    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) = 7892

obc_discussions (Datasource=booktalk_new, Time=230ms, Records=0) in /root/website/queries/qry_get_discussion_by_id.cfm @ 02:38:10.010
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) =

searchResults (Datasource=bookbrowse_com_new, Time=101ms, Records=0) in /root/website/queries/qry_get_discussion_by_id.cfm @ 02:38:10.010
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) = p7892

ya_check (Datasource=bookbrowse_com_new, Time=2ms, Records=0) in /root/website/queries/qry_get_books_by_briefs_category.cfm @ 02:38:10.010
select ezine_preview_reading_level 
from ezine_previews 
where ezine_preview_number = ?
and ezine_preview_reading_level = 2
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 7892

get_books_by_brief (Datasource=bookbrowse_com_new, Time=6ms, Records=20) in /root/website/queries/qry_get_books_by_briefs_category.cfm @ 02:38:10.010
select 			top 20
				a.ezine_preview_reading_level,
				b.category_name,
				c.category_number, 
				d.book_number, d.book_title,
				f.author_number, f.author_first_name, author_middle_initial, author_last_name
				
from 			ezine_previews a 
inner join		categories b on b.ezine_preview_category_number = a.ezine_preview_category_number
inner join		category_book_mapping c on c.category_number = b.category_number
inner join		books d on d.book_number = c.book_number
inner join		book_author_mapping e on e.book_number = d.book_number
inner join		authors f on f.author_number = e.author_number

where			a.ezine_preview_number = ? 

order by 		d.book_number DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 7892

get_author_bookcount (Datasource=bookbrowse_com_new, Time=29ms, Records=0) in /root/website/queries/qry_get_author_bookcount.cfm @ 02:38:10.010
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
		and 1=0
order by title DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 0
Parameter #2(CF_SQL_INTEGER) = 0

get_obc_number (Datasource=bookbrowse_com_new, Time=49ms, Records=1) in /root/website/queries/qry_get_obc_number.cfm @ 02:38:10.010
select a.arc_forumidfk
    from arcs a
    
    	where a.ezine_preview_number = ?
Query Parameter Value(s) -
Parameter #1(cf_sql_numeric) = 7892.0

existingResults (Datasource=bookbrowse_com_new, Time=91ms, Records=1) in /root/website/actions/udfs.cfm @ 02:38:10.010
SELECT id, last_updated
        FROM DiscourseSearchResults
        WHERE book_number = ?
        ORDER BY last_updated DESC
Query Parameter Value(s) -
Parameter #1(cf_sql_varchar) = p7892

get_ads (Datasource=bookbrowse_com_new, Time=49ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:10.010
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) = adzone3
Parameter #2(CF_SQL_VARCHAR) = 0
Parameter #3(CF_SQL_VARCHAR) = 0

get_ads (Datasource=bookbrowse_com_new, Time=19ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:10.010
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) = adzone3

get_member_account_types (Datasource=bookbrowse_com_new, Time=19ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 02:38:10.010
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_member_account_types (Datasource=bookbrowse_com_new, Time=28ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 02:38:10.010
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_ads (Datasource=bookbrowse_com_new, Time=30ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:10.010
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) = adzone11
Parameter #2(CF_SQL_VARCHAR) = 0
Parameter #3(CF_SQL_VARCHAR) = 0

get_ads (Datasource=bookbrowse_com_new, Time=29ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:10.010
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) = adzone11

get_member_account_types (Datasource=bookbrowse_com_new, Time=12ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 02:38:10.010
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_liked_by_brief_id (Datasource=bookbrowse_com_new, Time=17ms, Records=0) in /root/website/queries/qry_get_liked_by_brief_id.cfm @ 02:38:10.010
SELECT
		ep.ezine_preview_title AS book_title,
		'p' + CAST(ep.ezine_preview_number AS VARCHAR) AS book_number,
		b.book_title AS "referenced_book_title",
		CAST(b.book_number AS VARCHAR) AS "liked_book_number",
		b.book_short_summary AS "liked_short_summary",
		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 = b.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',
		0 AS 'is_brief'

	FROM 		liked a
	INNER JOIN	ezine_previews ep ON ep.ezine_preview_number = ?
		AND a.book_number = ep.ezine_preview_number
	INNER JOIN	books b ON b.book_number = a.liked_book_number
	INNER JOIN	book_author_mapping d ON d.book_number = b.book_number
	INNER JOIN	authors e ON e.author_number = d.author_number

	UNION

	
	SELECT
		ep.ezine_preview_title AS book_title,
		'p' + CAST(ep.ezine_preview_number AS VARCHAR) AS book_number,
		b.book_title AS "referenced_book_title",
		CAST(b.book_number AS VARCHAR) AS "liked_book_number",
		b.book_short_summary AS "liked_short_summary",
		CASE
			WHEN datalength(auth.author_middle_initial) > 0
			THEN auth.author_first_name + ' ' + auth.author_middle_initial + '. ' + auth.author_last_name
			ELSE auth.author_first_name + ' ' + auth.author_last_name
		END AS "author_name",
		(select top 1 edition_publish_dt from editions where editions.book_number = b.book_number order by edition_publish_dt DESC) AS 'sortdate',
		0 AS 'liked_author_bookcount',
		0 AS 'is_brief'

	FROM 		readalikes_cache rc
	INNER JOIN	ezine_previews ep ON ep.ezine_preview_number = ?
		AND rc.source_book_number = 'p' + CAST(ep.ezine_preview_number AS VARCHAR)
	INNER JOIN	books b ON b.book_number = rc.recommended_book_number
	INNER JOIN	book_author_mapping bam ON bam.book_number = b.book_number
	INNER JOIN	authors auth ON auth.author_number = bam.author_number

	ORDER BY 	sortdate desc, referenced_book_title
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 7892
Parameter #2(CF_SQL_INTEGER) = 7892

get_member_account_types (Datasource=bookbrowse_com_new, Time=15ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 02:38:10.010
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=32ms, Records=0) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 02:38:10.010
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=26ms, Records=3) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 02:38:10.010
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=168ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:10.010
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=26ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:10.010
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=21ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:10.010
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=7ms, Records=1) in /root/website/site/blocks/dsp_book_giveaway.cfm @ 02:38:10.010
select top 1 ezine_number, ezine_quote, ezine_quote_title
	    from ezines
	    where len(ezine_quote_title) > 1
	    order by newid()
get_free_newsletters (Datasource=bookbrowse_com_new, Time=0ms, Records=4, Cached Query) in /root/website/queries/qry_get_free_newsletters.cfm @ 02:38:10.010
SELECT 	*
    FROM 	free_newsletters
get_ads (Datasource=bookbrowse_com_new, Time=11ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:10.010
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=9ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:10.010
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=11ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 02:38:11.011
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/bb_briefs/detail/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; FREEACCESSCOUNT=0; CFGLOBALS=urltoken%3DCFID%23%3D4082523%26CFTOKEN%23%3D628c841eb4a33612%2D0A735EAF%2D9C90%2D7D21%2DE763F0AEED64FE81%23lastvisit%3D%7Bts%20%272026%2D06%2D01%2002%3A38%3A09%27%7D%23hitcount%3D46%23timecreated%3D%7Bts%20%272026%2D06%2D01%2002%3A37%3A57%27%7D%23cftoken%3D628c841eb4a33612%2D0A735EAF%2D9C90%2D7D21%2DE763F0AEED64FE81%23cfid%3D4082523%23; CFTOKEN=628c841eb4a33612-0A735EAF-9C90-7D21-E763F0AEED64FE81; CFID=4082523
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=/ezine_preview_number/7892/the-spy-lover
PATH_TRANSLATED=/root/website/bb_briefs/detail/index.cfm
QUERY_STRING=
REMOTE_ADDR=127.0.0.1
REMOTE_HOST=127.0.0.1
REMOTE_USER=
REQUEST_METHOD=GET
SCRIPT_NAME=/bb_briefs/detail/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=4082523
cftoken=628c841eb4a33612-0A735EAF-9C90-7D21-E763F0AEED64FE81
hitcount=54
lastvisit={ts '2026-06-01 02:38:10'}
library_user_flag=0
member_active_flag=0
member_logged_in_flag=0
member_number=0
order=p
timecreated={ts '2026-06-01 02:37:57'}
urltoken=CFID=4082523&CFTOKEN=628c841eb4a33612-0A735EAF-9C90-7D21-E763F0AEED64FE81
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#=4082523&CFTOKEN#=628c841eb4a33612-0A735EAF-9C90-7D21-E763F0AEED64FE81#lastvisit={ts '2026-06-01 02:38:09'}#hitcount=46#timecreated={ts '2026-06-01 02:37:57'}#cftoken=628c841eb4a33612-0A735EAF-9C90-7D21-E763F0AEED64FE81#cfid=4082523#
CFID=4082523
CFTOKEN=628c841eb4a33612-0A735EAF-9C90-7D21-E763F0AEED64FE81
FREEACCESSCOUNT=0
Session Variables:
cfid=4082523
cftoken=628c841eb4a33612-0A735EAF-9C90-7D21-E763F0AEED64FE81
sessionid=BOOKBROWSE_4082523_628c841eb4a33612-0A735EAF-9C90-7D21-E763F0AEED64FE81
urltoken=CFID=4082523&CFTOKEN=628c841eb4a33612-0A735EAF-9C90-7D21-E763F0AEED64FE81
URL Parameters:
ezine_preview_number=7892
the-spy-lover=
Debug Rendering Time: 20 ms