alinaliBQ opened a new issue, #46978:
URL: https://github.com/apache/arrow/issues/46978

   ### Describe the enhancement requested
   
   Acceptance Criteria:
   - The ODBC driver should support years before 1400, such as date `0001-01-01 
...` for date, time, and timestamp data
   - When querying dates before year 1400, we should not have errors like `Year 
is out of valid range: 1400..9999`
   
   ---- 
   
   For ODBC, we ported the fix at 
https://github.com/dremio/flightsql-odbc/commit/d44d862bd07f05328f5fcfd68a8f40357aa072fa
 which uses `boost::posix_time::to_tm(boost::posix_time::from_time_t(value))`, 
and the boost date time library doesn't support years before 1400, which is 
documented in [boost 
docs](https://www.boost.org/doc/libs/1_54_0/doc/html/date_time/date_time_io.html).
   
   > <html>
   > <body>
   > <!--StartFragment--><h4 style="text-align: left; margin: 1em 0em 0.5em; 
font-weight: bold; font-size: 19.2px; color: rgb(0, 0, 0); font-family: 
sans-serif; font-style: normal; font-variant-ligatures: normal; 
font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-indent: 
0px; text-transform: none; widows: 2; word-spacing: 0px; 
-webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255, 
255, 255); text-decoration-thickness: initial; text-decoration-style: initial; 
text-decoration-color: initial;">Special Values</h4><p style="text-align: left; 
font-size: 10pt; line-height: 1.15; color: rgb(0, 0, 0); font-family: 
sans-serif; font-style: normal; font-variant-ligatures: normal; 
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 
2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; 
-webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255, 
255, 255); text-decoration-thickness: initial; t
 ext-decoration-style: initial; text-decoration-color: initial;">The date_time 
library uses five special_values. They are:</p>
   > not_a_date_time | neg_infin | pos_infin | min_date_time | max_date_time
   > -- | -- | -- | -- | --
   > 
   > 
   > <p style="text-align: left; font-size: 10pt; line-height: 1.15; color: 
rgb(0, 0, 0); font-family: sans-serif; font-style: normal; 
font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; 
letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; 
widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: 
normal; background-color: rgb(255, 255, 255); text-decoration-thickness: 
initial; text-decoration-style: initial; text-decoration-color: 
initial;"></p><p style="text-align: left; font-size: 10pt; line-height: 1.15; 
color: rgb(0, 0, 0); font-family: sans-serif; font-style: normal; 
font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; 
letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; 
widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: 
normal; background-color: rgb(255, 255, 255); text-decoration-thickness: 
initial; text-decoration-style: initial; text-decorat
 ion-color: initial;">The default set of strings used to represent these types 
are: "not-a-date-time", "-infinity", "+infinity", "minimum-date-time", 
"maximum-date-time". When output, the min_date-time and max_date_time appear as 
normal date/time representations: "1400-Jan-01" and "9999-Dec-31" 
repectively.</p><!--EndFragment-->
   > </body>
   > </html>
   
   ### Component(s)
   
   C++, FlightRPC


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@arrow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to