Skip to content

CI: Fails "test_reopen(LogTest)" test with "TypeError: no implicit conversion of Pathname into String" since logger v1.6.3 on Windows #4742

@Watson1978

Description

@Watson1978

Describe the bug

If update logger gem to v1.6.3 or later, it fails test_reopen(LogTest) test.

PS C:\src\fluentd> bundle exec ruby -I"lib:test" .\test\test_log.rb
Loaded suite ./test/test_log
Started
Finished in 0.2304898 seconds.
------------------------------------------------------------------------------------------------------------------------
108 tests, 142 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
100% passed
------------------------------------------------------------------------------------------------------------------------
468.57 tests/s, 616.08 assertions/s
PS C:\src\fluentd> git stash
Saved working directory and index state WIP on master: f85b503a test_cat: specify the reading size to read in binary mode (#4730)
PS C:\src\fluentd> bundle exec ruby -I"lib:test" .\test\test_log.rb
Loaded suite ./test/test_log
Started
E
========================================================================================================================
Error: test_reopen(LogTest): TypeError: no implicit conversion of Pathname into String
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/logger-1.6.4/lib/logger/log_device.rb:99:in `initialize'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/logger-1.6.4/lib/logger/log_device.rb:99:in `new'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/logger-1.6.4/lib/logger/log_device.rb:99:in `fixup_mode'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/logger-1.6.4/lib/logger/log_device.rb:112:in `open_logfile'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/logger-1.6.4/lib/logger/log_device.rb:85:in `set_dev'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/logger-1.6.4/lib/logger/log_device.rb:62:in `block in reopen'
C:/Ruby33-x64/lib/ruby/3.3.0/monitor.rb:201:in `synchronize'
C:/Ruby33-x64/lib/ruby/3.3.0/monitor.rb:201:in `mon_synchronize'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/logger-1.6.4/lib/logger/log_device.rb:57:in `reopen'
C:/src/fluentd/lib/fluent/log.rb:749:in `reopen'
C:/src/fluentd/lib/fluent/log.rb:239:in `reopen!'
./test/test_log.rb:697:in `test_reopen'
     694:     message = "This is test message."
     695:
     696:     log.info message
  => 697:     log.reopen!
     698:     log.info message
     699:
     700:     assert { path.read.lines.count{ |line| line.include?(message) } == 2 }
========================================================================================================================
Finished in 0.235612 seconds.
------------------------------------------------------------------------------------------------------------------------
108 tests, 140 assertions, 0 failures, 1 errors, 0 pendings, 0 omissions, 0 notifications
99.0741% passed
------------------------------------------------------------------------------------------------------------------------
458.38 tests/s, 594.20 assertions/s

To Reproduce

Run bundle exec ruby -I"lib:test" .\test\test_log.rb

Expected behavior

No error

Your Environment

- Fluentd version:
- Package version:
- Operating system:
- Kernel version:

Your Configuration

none

Your Error Log

See above

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    CITest/CI issues

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions