[
https://issues.apache.org/jira/browse/THRIFT-1941?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Volodymyr Panivko closed THRIFT-1941.
-------------------------------------
Resolution: Fixed
Regression coverage merged in https://github.com/apache/thrift/pull/3794 on
2026-09-05. The generated PHP struct round-trip through TBinarySerializer is
covered by an integration test; existing runtime behavior already supports this
scenario. Closing as fixed.
> PHP Serializer deserialize doesn't work
> ---------------------------------------
>
> Key: THRIFT-1941
> URL: https://issues.apache.org/jira/browse/THRIFT-1941
> Project: Thrift
> Issue Type: Bug
> Components: PHP - Library
> Reporter: Nathaniel Cook
> Assignee: Volodymyr Panivko
> Priority: Major
> Attachments: thrift-1941.patch
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> The deserialize function in TBinarySerializer.php writes a message header to
> the transport and then tries to deserialize the thrift object. Because the
> TBinaryProtocolAccelerated class requires a TBufferedTransport it wraps it.
> The result is that the written message header is in the write buffer of the
> transport and when the desializer tries to read the data it doesn't get the
> message header because its only in the write buffer. Calling flush on the
> transport explicitly after writing the message header fixes the issue.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)