In com.datastax.driver.core.Requests.QueryProtocolOptions.encodedSize(ProtocolVersion) method implementation, it ignores the defaultTimestamp size when using V4 or higher version.
Thanks for reporting this !
This is definitely a problem, i'll work to fix it. Fortunately encodedSize is only used for requesting the initial capacity of the ByteBuf used to allocate the payload and write it (code), so client timestamps still work, its just that its not very optimal since we are requesting a ByteBuf smaller than we need, which probably creates some inefficiencies. I changed the target for our next release (3.5.0).