Bug #67336
closedcephfs: test failing to decode backtrace/symlink with ceph-dencoder
0%
Description
Seen in main branch run: /a/teuthology-2024-08-01_20:24:16-fs-main-distro-default-smithi/7831079
2024-08-04T20:49:52.268 INFO:teuthology.orchestra.run.smithi037.stderr:2024-08-04T20:49:52.262+0000 7f774270df40 1 -- 172.21.15.37:0/2920269784 shutdown_connections 2024-08-04T20:49:52.268 INFO:teuthology.orchestra.run.smithi037.stderr:2024-08-04T20:49:52.262+0000 7f774270df40 1 -- 172.21.15.37:0/2920269784 wait complete. 2024-08-04T20:49:52.269 DEBUG:teuthology.orchestra.run.smithi037:> ceph-dencoder type inode_backtrace_t import - decode dump_json 2024-08-04T20:49:52.361 INFO:teuthology.orchestra.run.smithi037.stderr:error: stray data at end of buffer, offset 95 2024-08-04T20:49:52.372 DEBUG:teuthology.orchestra.run:got remote process result: 1
Updated by Venky Shankar over 1 year ago
Also here: /a/vshankar-2024-08-01_09:58:56-fs-wip-vshankar-testing-20240801.064407-debug-testing-default-smithi/7829835
2024-08-01T19:12:14.544 DEBUG:teuthology.orchestra.run.smithi139:> ceph-dencoder type string_wrapper import - decode dump_json 2024-08-01T19:12:14.611 INFO:teuthology.orchestra.run.smithi139.stderr:error: stray data at end of buffer, offset 11 2024-08-01T19:12:14.616 DEBUG:teuthology.orchestra.run:got remote process result: 1
Updated by Milind Changire over 1 year ago
"stray data at end of buffer" is found in decode methods of 2 classes:
class DencoderBase : public Dencoderclass MessageDencoderImpl : public Dencoder
So, I'm trying to see why doesn't the dencoder for class string_wrapper get selected for decoding.
Also, class string_wrapper isn't derived out of class Dencoder either.
As of now I'm not sure what's going on here or what should be happening for the command ceph-dencoder type string_wrapper import - decode dump_json
Updated by Venky Shankar over 1 year ago
Milind Changire wrote in #note-3:
The string"stray data at end of buffer"is found indecodemethods of 2 classes:
class DencoderBase : public Dencoderclass MessageDencoderImpl : public DencoderSo, I'm trying to see why doesn't the dencoder for
class string_wrapperget selected for decoding.Also,
class string_wrapperisn't derived out ofclass Dencodereither.
As of now I'm not sure what's going on here or what should be happening for the commandceph-dencoder type string_wrapper import - decode dump_json
This issue is easily reproducible. Suggest trying a manual invocation of ceph-dencoder in a vstart cluster or running the test with vstart_runner.
Updated by Milind Changire over 1 year ago
bufferlist is 1 more than the (size + expected data) combined.
- size: 4 (int32_t)
- data: 27 ("/mnt/mycephfs/sym_dir/file1") <-- expected data
- len: 32
$ hexdump -C sl 00000000 1b 00 00 00 2f 6d 6e 74 2f 6d 79 63 65 70 68 66 |..../mnt/mycephf| 00000010 73 2f 73 79 6d 5f 64 69 72 2f 66 69 6c 65 31 0a |s/sym_dir/file1.| 00000020
Looks like there's a \n at the end.
Updated by Milind Changire over 1 year ago
PR https://github.com/ceph/ceph/pull/58213 is the one which appends an additional '\n' to the binary output.
Updated by Milind Changire over 1 year ago
The extra new-line char remediation has been taken care by https://github.com/ceph/ceph/pull/59025
Updated by Rishabh Dave over 1 year ago · Edited
Test failure: test_backtrace (tasks.cephfs.test_backtrace.TestBacktrace)
Test failure: test_open_ino_errors (tasks.cephfs.test_damage.TestDamage)
Test failure: test_backtrace_repair (tasks.cephfs.test_forward_scrub.TestForwardScrub)
Test failure: test_flush (tasks.cephfs.test_flush.TestFlush)
Test failure: test_multi_snap_schedule (tasks.cephfs.test_snap_schedules.TestSnapSchedules)
Updated by Venky Shankar over 1 year ago
- Status changed from New to Pending Backport
- Assignee changed from Milind Changire to Adam Kupczyk
- Backport set to reef,squid
- Pull request ID set to 59025
Adam, assigning this to you as you are the author of the fix: https://github.com/ceph/ceph/pull/59025
Updated by Upkeep Bot over 1 year ago
- Copied to Backport #67532: squid: cephfs: test failing to decode backtrace/symlink with ceph-dencoder added
Updated by Upkeep Bot over 1 year ago
- Copied to Backport #67533: reef: cephfs: test failing to decode backtrace/symlink with ceph-dencoder added
Updated by Upkeep Bot over 1 year ago
- Tags (freeform) set to backport_processed
Updated by Milind Changire about 1 year ago · Edited
squid:
https://pulpito.ceph.com/vshankar-2024-11-23_10:32:29-fs-wip-vshankar-testing-20241122.180955-squid-debug-testing-default-smithi/8005674
https://pulpito.ceph.com/vshankar-2024-11-23_10:32:29-fs-wip-vshankar-testing-20241122.180955-squid-debug-testing-default-smithi/8005616
https://pulpito.ceph.com/vshankar-2024-11-23_10:32:29-fs-wip-vshankar-testing-20241122.180955-squid-debug-testing-default-smithi/8005684
Updated by Upkeep Bot 9 months ago
- Status changed from Pending Backport to Resolved
- Upkeep Timestamp set to 2025-07-08T18:13:26+00:00
Updated by Upkeep Bot 8 months ago
- Merge Commit set to b251c8ae067f5164a752127439aafd0314c83e51
- Fixed In set to v19.3.0-4251-gb251c8ae06
- Upkeep Timestamp changed from 2025-07-08T18:13:26+00:00 to 2025-08-02T04:50:28+00:00
Updated by Upkeep Bot 5 months ago
- Released In set to v20.2.0~2236
- Upkeep Timestamp changed from 2025-08-02T04:50:28+00:00 to 2025-11-01T01:35:53+00:00