Read advance reader review of Doing Harm by Kelly Parsons, page 3 of 6

Summary | Reviews | More Information | More Books

Doing Harm by Kelly Parsons

Doing Harm

by Kelly Parsons

  • Critics' Consensus (0):
  • Readers' Rating (72):
  • Published:
  • Feb 2014, 368 pages
  • Rate this book

About this book

Reviews


Page 3 of 6
There are currently 37 member reviews
for Doing Harm
Order Reviews by:
  • Portia A. (Mount Laurel, NJ)
    Wow!
    "Doing Harm" was one of the best of its kind that I've read for a long while..and kept my interest from the beginning. The fact that the protagonist is a surgeon and much of the plot takes place in a hospital made the story even more exciting.
    If you enjoyed "Gone Girl" or "Close My Eyes" or other such books this book is most certainly for you.
  • DJ
    Do not read before surgery!
    This is an excellent medical thriller. It is a "stay with it until you finish it" kind of book. Many twists and turns. Someone is murdering patients using methods or situations that can happen in a hospital setting and not be discovered. The author is a doctor which brings medical credibility to the story. Well done by a first novel author. Would recommend it to anyone who likes a gripping story.
  • Jeff S. (Nashville, TN)
    Excellent Thriller
    Doing Harm is a medical thriller. It is gripping from the start and never lets the reader rest. It's definitely one of the best thrillers that I have read in years. It is the story of Steve MItchell, a doctor at University Hospital, who meets and gets involved with a killer. The writer lets you see Steve making lapses in judgement and you know that he is all too human. He is not prepared for what is about to happen to him and that for him to get out the mess that he is entering will take a great deal of effort and some help. I would and will highly recommend this book.
  • Laurie B. (Jacksonville, FL)
    kept my interest
    This is one of the more realistic medical thrillers that I've read. The premise and plot are original. The author's writing style is engaging. I did find many grammatical/spelling errors--don't know if this is because it is a pre-publication copy, but hope they correct them before mass publication because the errors will do the book a disservice. I'd like to read more by this author and hope he writes more novels
  • Jan K. (San Francisco, CA)
    Clandestine Hospital Happenings
    I have a background in medical malpractice so I love reading medical thrillers. Doing Harm frames the experiences of an ambitious resident physician supervising another resident and a brilliant medical student. The narrative moves quickly with the first event to establish the medical mishap theme occurring early in the novel. Doing Harm deals with unfortunate accidents common to hospitals and the author's background provides good detail into medical procedures and hospital protocol, such as the Morbidity and Mortality conference. The grief often felt by physicians who commit medical errors is authentic. The novel is suspenseful and will hold the readers interest as they wonder who or what is manipulating these deathly events. Readers who enjoy Harlan Coben will enjoy Doing Harm - in fact Coben provides a positive blurb - "compelling and gripping…"

    I recently finished a similar book, Monday Mornings, by Dr. Sanjay Gupta. This novel follows the work of several surgeons practicing in a hospital and provides plenty of drama without the mystery.
  • Eileen L. (Osprey, FL)
    Great medical thriller read
    Once again a genuine medical doctor writes a thriller about something he knows from the inside -- hospital politics and patient care. Engaging writer. Good successor to Michael Palmer.
  • Donna M. (Ashland, OR)
    Doing Harm by Kelly Parsons
    The book is an easy, engaging read. I found the medical aspects interesting and would think that it would speak to anyone in the medical field. I was expecting more around ethical dilemmas and would have liked to see a stronger case for why the murderer was so strident about safety. The politics and complexities of the medical arena rang true. The lingering question that I continued to consider was who truly did the right thing and was guided by a strong moral code? Not necessarily the main character.
    I would recommend this book to readers who enjoy mysteries and those with an interest in medical issues.

More Information

Read-Alikes

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

Any activity becomes creative when the doer cares about doing it right, or better.

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 /arc/arc_reviews/detail/index.cfm
Time Stamp 01-Jun-26 04:06 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
1780286791909 ms 1.78028679191E+012 ms 1 /root/website/app_server.cfm
1779 ms 1779 ms 1 /root/website/arc/arc_reviews/detail/index.cfm
569 ms 569 ms 1 /root/website/app_layout.cfm
411 ms 411 ms 1 /root/website/queries/qry_get_discussion_by_id.cfm
384 ms 192 ms 2 /root/website/adsystem/adsystem_mod.cfm
295 ms 295 ms 1 /root/website/site/blocks/layout/dsp_right_column.cfm
278 ms 278 ms 1 /root/website/queries/qry_get_briefs_reader_rating.cfm
236 ms 236 ms 1 /root/website/app_globals.cfm
227 ms 227 ms 1 /root/website/site/blocks/layout/dsp_footer.cfm
225 ms 225 ms 1 /root/website/adzones/showcase_track.cfm
168 ms 168 ms 1 /root/website/adzones/AdZone6.cfm
116 ms 116 ms 1 /root/website/queries/qry_get_active_obc.cfm
109 ms 109 ms 1 /root/website/queries/qry_get_reviews_by_arc_id.cfm
63 ms 63 ms 1 /root/website/site/blocks/dsp_book_giveaway.cfm
57 ms 57 ms 1 /root/website/site/blocks/dsp_border_first_impressions.cfm
56 ms 56 ms 1 /root/website/queries/qry_get_arcs_for_ad.cfm
39 ms 39 ms 1 /root/website/queries/qry_get_arc_by_id.cfm
35 ms 35 ms 1 /root/website/queries/qry_get_books_by_briefs_category.cfm
31 ms 31 ms 1 /root/website/queries/qry_get_free_newsletters.cfm
31 ms 31 ms 1 /root/website/site/blocks/layout/dsp_bottom_block.cfm
29 ms 10 ms 3 /root/website/actions/act_spider_tracker.cfm
28 ms 28 ms 1 /root/website/queries/qry_get_current_competition.cfm
26 ms 26 ms 1 /root/website/queries/qry_get_preview_awards_by_id.cfm
25 ms 25 ms 1 /root/website/queries/qry_get_preview_by_id.cfm
23 ms 23 ms 1 /root/website/arc/arc_reviews/detail/dsp_briefshell.cfm
15 ms 15 ms 1 /root/website/act_check_login.cfm
15 ms 15 ms 1 /root/website/queries/qry_get_current_wordplay.cfm
13 ms 13 ms 1 /root/website/queries/qry_get_member_info.cfm
12 ms 12 ms 1 /root/website/actions/adstatus.cfm
10 ms 10 ms 1 /root/website/queries/qry_get_obc_number.cfm
6 ms 6 ms 1 /root/website/queries/qry_get_author_bookcount.cfm
4 ms 4 ms 1 /root/website/queries/qry_get_previous_arcs_for_ad.cfm
3 ms 3 ms 1 /root/website/site/blocks/layout/dsp_header.cfm
1 ms 1 ms 1 /root/website/arc/arc_reviews/detail/dsp_reviews.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/head.cfm
1 ms 1 ms 1 /root/website/site/blocks/layout/main_menu.cfm
0 ms 0 ms 1 /root/website/Application.cfm
0 ms 0 ms 1 /root/website/act_libraryIPLogin.cfm
0 ms 0 ms 1 /root/website/actions/udfs.cfm
0 ms 0 ms 1 /root/website/arc/arc_reviews/detail/dsp_views.cfm
0 ms 0 ms 1 /root/website/banners/ad_594.cfm
0 ms 0 ms 1 /root/website/formurl2attributes.cfm
0 ms 0 ms 1 /root/website/js/fbjavascriptsdk.cfm
0 ms 0 ms 1 /root/website/queries/qry_get_current_ezine.cfm
0 ms 0 ms 1 /root/website/site/blocks/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
0 ms 0 ms 1 /root/website/site/blocks/layout/main_search.cfm
75 ms  STARTUP, PARSING, COMPILING, LOADING, & SHUTDOWN
1854 ms  TOTAL EXECUTION TIME
red = over 250 ms average execution time


SQL Queries

spidercheck (Datasource=bookbrowse_com_new, Time=27ms, Records=1) in /root/website/actions/act_spider_tracker.cfm @ 04:06:31.031
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=12ms, Records=0) in /root/website/queries/qry_get_member_info.cfm @ 04:06:31.031
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=11ms, Records=2) in /root/website/actions/adstatus.cfm @ 04:06:31.031
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 @ 04:06:31.031
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=14ms, Records=1) in /root/website/queries/qry_get_current_wordplay.cfm @ 04:06:31.031
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=23ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 04:06:32.032
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=2ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 04:06:32.032
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 @ 04:06:32.032
SELECT 	a.arc_number,a.arc_client_url,a.arc_active_dt, a.arc_off_ad_dt,
		b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_publisher, 
		b.ezine_preview_publish_dt, b.ezine_preview_jacket_desc, b.ezine_preview_number_of_pages, b.ezine_preview_bb_comments, b.ezine_preview_isbn13,
		c.ezine_preview_category_name AS "ezine_preview_category",
		(select count(*) from arc_allocator d where d.arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) as "reviews",
		(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,0))) AS numeric(12,0)))+
				(CASE WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 25 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 50 THEN 0.5
				 WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 50 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 75 THEN -0.5
				 ELSE 0
				 END)
 			from arc_allocator	where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS arcrating,
 			(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,1))) AS numeric(12,1)))from arc_allocator where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS "decrating"

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

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

ORDER BY a.arc_on_ad_dt DESC
get_future_obc (Datasource=bookbrowse_com_new, Time=9ms, Records=0) in /root/website/queries/qry_get_active_obc.cfm @ 04:06:32.032
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=51ms, Records=1) in /root/website/queries/qry_get_active_obc.cfm @ 04:06:32.032
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=53ms, Records=4) in /root/website/queries/qry_get_active_obc.cfm @ 04:06:32.032
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_arc_by_id (Datasource=bookbrowse_com_new, Time=39ms, Records=1) in /root/website/queries/qry_get_arc_by_id.cfm @ 04:06:32.032
SELECT		a.arc_client_url,
			a.bc_active_flag,
			a.arc_forumidfk,
			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_number_of_pages, b.ezine_preview_isbn, b.ezine_preview_isbn13, b.ezine_preview_bb_link, b.ezine_preview_bb_author_link, b.ezine_preview_firsts_flag, b.ezine_preview_rating, b.ezine_preview_reading_level,
			c.ezine_preview_category_name,
			(select count(arc_allocator_review_rating) from arc_allocator	where arc_number = ? and arc_allocator_review_approved_flag = 1) AS arccount,
            
            (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 = ? 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
INNER JOIN	ezine_preview_categories c on c.ezine_preview_category_number = b.ezine_preview_category_number

WHERE		a.arc_number = ?
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 438
Parameter #2(CF_SQL_INTEGER) = 438
Parameter #3(CF_SQL_INTEGER) = 438

get_reviews_by_arc_id (Datasource=bookbrowse_com_new, Time=108ms, Records=37) in /root/website/queries/qry_get_reviews_by_arc_id.cfm @ 04:06:32.032
SELECT		arc_number, arc_allocator_number, arc_allocator_review_dt, arc_allocator_reviewer_name, arc_allocator_review_title, arc_allocator_review, arc_allocator_review_rating,
			member_cc_city, member_cc_state

FROM		arc_allocator a
inner join	members m on m.member_number = a.member_number

WHERE		arc_number = ?
AND			arc_allocator_review_approved_flag = 1


	ORDER BY arc_allocator_review_rating DESC, arc_allocator_review_dt DESC
Query Parameter Value(s) -
Parameter #1(CF_SQL_INTEGER) = 438

get_briefs_reader_rating (Datasource=bookbrowse_com_new, Time=277ms, Records=1) in /root/website/queries/qry_get_briefs_reader_rating.cfm @ 04:06:32.032
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) = 8997
Parameter #2(CF_SQL_INTEGER) = 8997

get_preview_by_id (Datasource=bookbrowse_com_new, Time=25ms, Records=1) in /root/website/queries/qry_get_preview_by_id.cfm @ 04:06:32.032
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) = 8997

get_preview_awards_by_id (Datasource=bookbrowse_com_new, Time=25ms, Records=0) in /root/website/queries/qry_get_preview_awards_by_id.cfm @ 04:06:32.032
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) = 8997

get_arc_idfk (Datasource=bookbrowse_com_new, Time=45ms, Records=0) in /root/website/queries/qry_get_discussion_by_id.cfm @ 04:06:32.032
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) = 8997

get_arc_idfk_legacy (Datasource=bookbrowse_com_new, Time=16ms, Records=0) in /root/website/queries/qry_get_discussion_by_id.cfm @ 04:06:32.032
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) = 8997

obc_discussions (Datasource=booktalk_new, Time=246ms, Records=0) in /root/website/queries/qry_get_discussion_by_id.cfm @ 04:06:32.032
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=102ms, Records=0) in /root/website/queries/qry_get_discussion_by_id.cfm @ 04:06:33.033
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) = p8997

ya_check (Datasource=bookbrowse_com_new, Time=15ms, Records=0) in /root/website/queries/qry_get_books_by_briefs_category.cfm @ 04:06:33.033
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) = 8997

get_books_by_brief (Datasource=bookbrowse_com_new, Time=18ms, Records=20) in /root/website/queries/qry_get_books_by_briefs_category.cfm @ 04:06:33.033
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) = 8997

get_author_bookcount (Datasource=bookbrowse_com_new, Time=6ms, Records=0) in /root/website/queries/qry_get_author_bookcount.cfm @ 04:06:33.033
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=10ms, Records=1) in /root/website/queries/qry_get_obc_number.cfm @ 04:06:33.033
select a.arc_forumidfk
    from arcs a
    
    	where a.ezine_preview_number = ?
Query Parameter Value(s) -
Parameter #1(cf_sql_numeric) = 8997.0

get_arcs_for_ad (Datasource=bookbrowse_com_new, Time=17ms, Records=0) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 04:06:33.033
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=37ms, Records=3) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 04:06:33.033
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=93ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 04:06:33.033
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=35ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 04:06:33.033
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=34ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 04:06:33.033
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=62ms, Records=1) in /root/website/site/blocks/dsp_book_giveaway.cfm @ 04:06:33.033
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=30ms, Records=4) in /root/website/queries/qry_get_free_newsletters.cfm @ 04:06:33.033
SELECT 	*
    FROM 	free_newsletters
get_ads (Datasource=bookbrowse_com_new, Time=29ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 04:06:33.033
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=160ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 04:06:33.033
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=14ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 04:06:33.033
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/arc/arc_reviews/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=CFID=4085111; FREEACCESSCOUNT=0; CFTOKEN=9a563d255dadc1df-0D9B06B9-DE1B-EFE2-864770243F537549; 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%3D4085111%26CFTOKEN%23%3D9a563d255dadc1df%2D0D9B06B9%2DDE1B%2DEFE2%2D864770243F537549%23lastvisit%3D%7Bts%20%272026%2D06%2D01%2004%3A06%3A31%27%7D%23hitcount%3D97%23timecreated%3D%7Bts%20%272026%2D06%2D01%2004%3A06%3A10%27%7D%23cftoken%3D9a563d255dadc1df%2D0D9B06B9%2DDE1B%2DEFE2%2D864770243F537549%23cfid%3D4085111%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=/arc_number/438/page/3/doing-harm
PATH_TRANSLATED=/root/website/arc/arc_reviews/detail/index.cfm
QUERY_STRING=
REMOTE_ADDR=127.0.0.1
REMOTE_HOST=127.0.0.1
REMOTE_USER=
REQUEST_METHOD=GET
SCRIPT_NAME=/arc/arc_reviews/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=4085111
cftoken=9a563d255dadc1df-0D9B06B9-DE1B-EFE2-864770243F537549
hitcount=103
lastvisit={ts '2026-06-01 04:06:33'}
library_user_flag=0
member_active_flag=0
member_logged_in_flag=0
member_number=0
order=p
timecreated={ts '2026-06-01 04:06:10'}
urltoken=CFID=4085111&CFTOKEN=9a563d255dadc1df-0D9B06B9-DE1B-EFE2-864770243F537549
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#=4085111&CFTOKEN#=9a563d255dadc1df-0D9B06B9-DE1B-EFE2-864770243F537549#lastvisit={ts '2026-06-01 04:06:31'}#hitcount=97#timecreated={ts '2026-06-01 04:06:10'}#cftoken=9a563d255dadc1df-0D9B06B9-DE1B-EFE2-864770243F537549#cfid=4085111#
CFID=4085111
CFTOKEN=9a563d255dadc1df-0D9B06B9-DE1B-EFE2-864770243F537549
FREEACCESSCOUNT=0
Session Variables:
cfid=4085111
cftoken=9a563d255dadc1df-0D9B06B9-DE1B-EFE2-864770243F537549
sessionid=BOOKBROWSE_4085111_9a563d255dadc1df-0D9B06B9-DE1B-EFE2-864770243F537549
urltoken=CFID=4085111&CFTOKEN=9a563d255dadc1df-0D9B06B9-DE1B-EFE2-864770243F537549
URL Parameters:
arc_number=438
doing-harm=
page=3
Debug Rendering Time: 89 ms