I am using tExtractJSONFields and chose to do a built in schema. For one of my output columns I chose int for the data type. My data appears to be bypassed when this value is greater than 7000516717. I have other rows with values like 7000563800 that are being bypassed. Is there a value limit here that I'm unaware of?
By default, the int data type is a 32-bit signed two's complement integer, which has a minimum value of -2^31 and a maximum value of 2^31-1. So the highest number you could have is 2147483647.
Clearly 7000516717 or 7000563800 would not hold. Try changing to long - which has a minimum value of -2^63 and a maximum value of 2^63-1
That's because 7000516717 is bigger than the largest value that will fit into a Java int (2147483647). Use a long.
Java represents integers in signed 2's complement format. An integer is 32 bits wide. This means the smallest value it can store is -2^31 and that the largest is 2^31 -1. We lose one place on the positive side because we need to be able to represent zero. It would take 33 bits to store 7000516717. You can figure this out quickly by using a log base 2 calculator like this one: https://www.miniwebtool.com/log-base-2-calculator/
The first 100 community members completing the Open Studio survey win a $10 gift voucher.
Talend named a Leader.
Kickstart your first data integration and ETL projects.
Watch the recorded webinar!
Pick up some tips and tricks with Context Variables
Learn how media organizations have achieved success with Data Integration
Introduction to Talend Open Studio for Data Integration.