tracker issue : CF-4158658

select a category, or use search below
(searches all categories and all time range)
Title:

[ANeff] Bug for: CF11+ broke deserialization of WDDX'd timestamp query columns

| View in Tracker

Status/Resolution/Reason: Closed/Fixed/

Reporter/Name(from Bugbase): Aaron Neff / Aaron Neff (Aaron Neff)

Created: 05/28/2016

Components: Language, Serialization

Versions: 11.0

Failure Type: Data Loss

Found In Build/Fixed In Build: CF2016_FInal /

Priority/Frequency: Critical / Some users will encounter

Locale/System: English / Platforms All

Vote Count: 0

Listed in the version 2016.0.03.300466 Issues Fixed doc
CF11+ broke deserialization of WDDX'd timestamp query columns

Steps to reproduce:

1) Run this code in CF10, CF11 and CF2016:

<cfset q1 = queryNew("myColumn", "timestamp", [[createDateTime(2016,5,28,1,2,3)]])>
<cfwddx action="cfml2wddx" input="#q1#" output="qWDDX">
<cfwddx action="wddx2cfml" input="#qWDDX#" output="q2">
<cfset queryAddRow(q2, [[createDateTime(2016,5,28,2,3,4)]])>
<cfdump var="#q2#">

Actual result: CF10 displays time portion for both timestamps. CF11 and CF2016 display time portion for 1st timestamp but trim time portion off 2nd timestamp.

Expected result: Time portion should always be displayed for "timestamp"

Notes:
1) wddx2cfml deserializes <dateTime> to "date" column type
2) pre-CF11 "date" column type also held time information
3) In CF11+, "date" column type trims time information, due to new stricter validation (see 3929913)

Suggestions:
1) wddx2cfml should deserialize <dateTime> to "timestamp" column type

Note: You might then be tempted to also change cfml2wddx to serialize "date" column type as <date> and "time" column type as <time>. However, that would need to be documented b/c it would break code that expected pre-CF11's behavior wherein "date" column type also held time information. Pre-CF11 code used "date" column type b/c "timestamp" wasn't documented until Sept 29, 2015 (per 4064813).

----------------------------- Additional Watson Details -----------------------------

Watson Bug ID:	4158658

External Customer Info:
External Company:  
External Customer Name: Aaron Neff
External Customer Email:

Attachments:

Comments:

Hi Adobe, Could you please change this ticket's "Found In Build" from "CFB2016_Update2" to "CF2016_Update1"? Three issues w/ the "Found In Build" list: 1) CF2016_Update2 should be CF2016_Update1 (b/c Update 2 isn't out yet) 2) CFB2016_Update2 should be CFB2016_Update1 (b/c Update 2 isn't out yet) 3) Default should be latest CF version, instead of latest CFB version. Currently, the default is CFB2016_Update2. After fixing #1 and #2, the default should be CFB2016_Update1. Hoping I don't need to create a separate ticket for the above.. Thanks!, -Aaron
Comment by External U.
2611 | May 31, 2016 02:42:31 AM GMT
Hi Adobe, Please disregard the 'Three issues w/ the "Found In Build" list' part of my previous comment. I've filed Bugbase ticket 4159326 for that. Can you please just change this ticket's Found In Build from "CFB2016_Update2" to "CF2016_Final"? Thanks!, -Aaron
Comment by External U.
2612 | May 31, 2016 03:01:46 AM GMT
I have updated it Aaron. -Nimit
Comment by Nimit S.
2613 | May 31, 2016 03:13:41 AM GMT
Hi Nimit, Awesome, thanks very much! -Aaron
Comment by External U.
2614 | May 31, 2016 04:32:26 AM GMT
This issue is fixed now. The fix for this issue will be available as part of an upcoming update of ColdFusion.
Comment by Nimit S.
2615 | August 09, 2016 05:11:46 AM GMT