Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

glog: 0.4.0 -> 0.5.0, also enable tests #144561

Merged
merged 3 commits into from
Nov 5, 2021
Merged

glog: 0.4.0 -> 0.5.0, also enable tests #144561

merged 3 commits into from
Nov 5, 2021

Conversation

nh2
Copy link
Contributor

@nh2 nh2 commented Nov 3, 2021

Motivation for this change

https://github.com/google/glog/releases/tag/v0.5.0

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 21.11 Release Notes (or backporting 21.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

@nh2 nh2 self-assigned this Nov 3, 2021
@nh2
Copy link
Contributor Author

nh2 commented Nov 3, 2021

@tobim Would you be up to be co-maintainer on the glog package?

@nh2
Copy link
Contributor Author

nh2 commented Nov 3, 2021

nixpkgs-review reveaals build failures of packages that depend on glog.

Example ceres:

-- No preference for use of exported glog CMake configuration set, and no hints for include/library directories provided. Defaulting to preferring an installed/exported glog CMake configuration if available.
CMake Error at /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/cmake/glog/glog-config.cmake:22 (include):
  include could not find requested file:

    /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/cmake/glog/glog-modules.cmake
Call Stack (most recent call first):
  cmake/FindGlog.cmake:208 (find_package)
  CMakeLists.txt:430 (find_package)


-- Found installed version of glog: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/cmake/glog
-- Detected glog version: 0.5.0
-- Found Glog: glog::glog  
-- Found Google Log (glog). Assuming glog was built with gflags support as gflags was found. This will make gflags a public dependency of Ceres.

The sought file was built but apparently not installed:

# find /tmp/nix-build-glog-0.5.0.drv-4 | grep glog-module
/tmp/nix-build-glog-0.5.0.drv-4/source/build/glog-modules.cmake
/tmp/nix-build-glog-0.5.0.drv-4/source/glog-modules.cmake.in

Indeed it's missing in here:

Install the project...
-- Install configuration: "Release"
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/libglog.so.0.5.0
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/libglog.so.0
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/libglog.so
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/include/glog/export.h
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/include/glog/logging.h
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/include/glog/raw_logging.h
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/include/glog/stl_logging.h
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/include/glog/vlog_is_on.h
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/include/glog/log_severity.h
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/pkgconfig/libglog.pc
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0//nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/cmake/glog/glog-modules.cmake
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/cmake/glog/glog-config.cmake
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/cmake/glog/glog-config-version.cmake
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/cmake/glog/glog-targets.cmake
-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/cmake/glog/glog-targets-release.cmake
@nix { "action": "setPhase", "phase": "fixupPhase" }
post-installation fixup

That looks wrong:

-- Installing: /nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0//nix/store/40y5r3nqm0w3qb6jin75vlqnzn4fmjd3-glog-0.5.0/lib/cmake/glog/glog-modules.cmake

This looks like a related workaround in another package:

postFixup = ''
substituteInPlace $out/lib/cmake/${pname}/${pname}-targets.cmake \
--replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
'';
# prevents cmake from exporting incorrect INTERFACE_INCLUDE_DIRECTORIES
# of form /nix/store/.../nix/store/.../include,
# probably due to relative vs absolute path issue

But for our glog that doesn't work, because the install target path itself is wrong. It comes from here:

https://github.com/google/glog/blob/17e7679fd9beb95277ccd0708056ba85363f892b/CMakeLists.txt#L1007-L1011

# Directory containing the find modules relative to the config install
# directory.
file (RELATIVE_PATH glog_REL_CMake_MODULES
  ${_PREFIX}/${_glog_CMake_INSTALLDIR}
  ${_PREFIX}/${_glog_CMake_DATADIR}/glog-modules.cmake)

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

I cannot pursue this further now.

Somebody else needs to put some prints into the CMakeList.txt file to figure out if glog_REL_CMake_MODULES or some earlier/later variable is computed incorrectly.

@r-burns
Copy link
Contributor

r-burns commented Nov 4, 2021

I think this is enough to fix it:

--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -868,7 +868,7 @@ configure_file (\"${CMAKE_CURRENT_SOURCE_DIR}/glog-modules.cmake.in\"
 file (INSTALL
   \"${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/glog-modules.cmake\"
   DESTINATION
-  \"\${CMAKE_INSTALL_PREFIX}/${_glog_CMake_INSTALLDIR}\")
+  \"${_glog_CMake_INSTALLDIR}\")
 "
   COMPONENT Development
 )

If a relative DESTINATION is given, it's assumed to be relative to the install prefix. So this is more correct anyway, and upstreamable as-is.

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

I think this is enough to fix it:

@r-burns Great, that works:

-- Installing: /nix/store/1wq3a7wz01343izrwwk9hrxgz8syg633-glog-0.5.0/lib/cmake/glog/glog-modules.cmake

Would you be up for making the upstream PR, since you understand better what's going on?

@r-burns
Copy link
Contributor

r-burns commented Nov 4, 2021

I would rather not sign their CLA, especially for such a trivial change.

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

I would rather not sign their CLA, especially for such a trivial change.

@r-burns Makes sense. I will do it.

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

Upstream PR: google/glog#733

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

Upstream PR: google/glog#733

Patch added to this PR.

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

nixpkgs-review reveaals build failures of packages that depend on glog.

This is fixed now with the above changes. Still building, but 33 of 77 packages have built so far and none has failed.

@r-burns
Copy link
Contributor

r-burns commented Nov 4, 2021

I get the same issue as google/glog#709 on x86_64-darwin, and it happens on master as well. Maybe best to exclude that test for now

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

Maybe best to exclude that test for now

@r-burns OK, I disabled test on Darwin for now.

Copy link
Contributor

@r-burns r-burns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks!

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

@r-burns Would you be up for being co-maintainer on it?

@r-burns
Copy link
Contributor

r-burns commented Nov 4, 2021

Absolutely, feel free to add me

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

Great, then we're done here. nixpkgs-review didn't produce any error, but 2 packages hang in their test suite (one is python3.8-einops-0.3.2) -- probably unrelated.

@nh2
Copy link
Contributor Author

nh2 commented Nov 4, 2021

@GrahamcOfBorg build

@ofborg ofborg bot requested a review from r-burns November 4, 2021 03:13
@nh2
Copy link
Contributor Author

nh2 commented Nov 5, 2021

Upstream PR was merged.

@nh2 nh2 merged commit b790473 into NixOS:master Nov 5, 2021
@tobim
Copy link
Contributor

tobim commented Nov 7, 2021

@tobim Would you be up to be co-maintainer on the glog package?

@nh2 I'm not particularly interested in this library and I kinda dislike the API, so I'll pass. 🙂

@nh2
Copy link
Contributor Author

nh2 commented Nov 11, 2021

@r-burns FYI for the future, upstream glog commit google/glog@3362cc6

commit 3362cc6c79014170f80e1b8a5c74e7fd61fcb5e4 (HEAD, refs/bisect/bad)
Author: Sergiu Deitsch <sergiu.deitsch@gmail.com>
Date:   Tue Oct 12 11:13:02 2021 +0200

    added log cleaner tests and fixed paths

introduced a test failure for me in the nix build on Linux x86_64 (but not an Ubuntu build).

Output:

Running tests...
/nix/store/sg4gfdp6ahmz8341zh8r3f2s1hylmy47-cmake-3.21.2/bin/ctest --force-new-ctest-process 
Test project /build/glog/build
      Start  7: cmake_package_config_init
      Start 11: cleanup_init
      Start  1: demangle
      Start  2: logging
      Start  3: signalhandler
      Start  4: stacktrace
      Start  5: stl_logging
      Start  6: symbolize
 1/14 Test  #1: demangle .........................   Passed    0.00 sec
 2/14 Test  #3: signalhandler ....................   Passed    0.00 sec
 3/14 Test  #4: stacktrace .......................   Passed    0.00 sec
 4/14 Test  #5: stl_logging ......................   Passed    0.00 sec
 5/14 Test #11: cleanup_init .....................   Passed    0.01 sec
      Start 13: cleanup_immediately
      Start 14: cleanup_with_prefix
 6/14 Test  #6: symbolize ........................   Passed    0.00 sec
 7/14 Test  #7: cmake_package_config_init ........   Passed    0.01 sec
      Start  8: cmake_package_config_generate
 8/14 Test  #2: logging ..........................***Failed    0.25 sec
F20211111 12:56:38.639839  3398 logging_unittest.cc:308] unexpected new
*** Check failure stack trace: ***
F00000000 00:00:00.000000  3398 logging_unittest.cc:479] RAW: Check false failed: failure 1
F20211111 12:56:38.639915  3398 logging_unittest.cc:637] CHECK_STREQ failed: __null == "this" ( vs. this)
*** Check failure stack trace: ***
F20211111 12:56:38.639915  3398 logging_unittest.cc:637] CHECK_STREQ failed: __null == "this" ( vs. this)F20211111 12:56:38.639921  3398 logging_unittest.cc:638] CHECK_STREQ failed: "this" == "siht" (this vs. siht)
*** Check failure stack trace: ***
F20211111 12:56:38.639915  3398 logging_unittest.cc:637] CHECK_STREQ failed: __null == "this" ( vs. this)F20211111 12:56:38.639921  3398 logging_unittest.cc:638] CHECK_STREQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639926  3398 logging_unittest.cc:639] CHECK_STRCASEEQ failed: __null == "siht" ( vs. siht)
*** Check failure stack trace: ***
F20211111 12:56:38.639915  3398 logging_unittest.cc:637] CHECK_STREQ failed: __null == "this" ( vs. this)F20211111 12:56:38.639921  3398 logging_unittest.cc:638] CHECK_STREQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639926  3398 logging_unittest.cc:639] CHECK_STRCASEEQ failed: __null == "siht" ( vs. siht)F20211111 12:56:38.639931  3398 logging_unittest.cc:640] CHECK_STRCASEEQ failed: "this" == "siht" (this vs. siht)
*** Check failure stack trace: ***
F20211111 12:56:38.639915  3398 logging_unittest.cc:637] CHECK_STREQ failed: __null == "this" ( vs. this)F20211111 12:56:38.639921  3398 logging_unittest.cc:638] CHECK_STREQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639926  3398 logging_unittest.cc:639] CHECK_STRCASEEQ failed: __null == "siht" ( vs. siht)F20211111 12:56:38.639931  3398 logging_unittest.cc:640] CHECK_STRCASEEQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639936  3398 logging_unittest.cc:641] CHECK_STRNE failed: __null != __null ( vs. )
*** Check failure stack trace: ***
F20211111 12:56:38.639915  3398 logging_unittest.cc:637] CHECK_STREQ failed: __null == "this" ( vs. this)F20211111 12:56:38.639921  3398 logging_unittest.cc:638] CHECK_STREQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639926  3398 logging_unittest.cc:639] CHECK_STRCASEEQ failed: __null == "siht" ( vs. siht)F20211111 12:56:38.639931  3398 logging_unittest.cc:640] CHECK_STRCASEEQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639936  3398 logging_unittest.cc:641] CHECK_STRNE failed: __null != __null ( vs. )F20211111 12:56:38.639942  3398 logging_unittest.cc:642] CHECK_STRNE failed: "this" != "this" (this vs. this)
*** Check failure stack trace: ***
F20211111 12:56:38.639915  3398 logging_unittest.cc:637] CHECK_STREQ failed: __null == "this" ( vs. this)F20211111 12:56:38.639921  3398 logging_unittest.cc:638] CHECK_STREQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639926  3398 logging_unittest.cc:639] CHECK_STRCASEEQ failed: __null == "siht" ( vs. siht)F20211111 12:56:38.639931  3398 logging_unittest.cc:640] CHECK_STRCASEEQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639936  3398 logging_unittest.cc:641] CHECK_STRNE failed: __null != __null ( vs. )F20211111 12:56:38.639942  3398 logging_unittest.cc:642] CHECK_STRNE failed: "this" != "this" (this vs. this)F20211111 12:56:38.639947  3398 logging_unittest.cc:643] CHECK_STREQ failed: (string("a")+"b").c_str() == "abc" (ab vs. abc)
*** Check failure stack trace: ***
F20211111 12:56:38.639915  3398 logging_unittest.cc:637] CHECK_STREQ failed: __null == "this" ( vs. this)F20211111 12:56:38.639921  3398 logging_unittest.cc:638] CHECK_STREQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639926  3398 logging_unittest.cc:639] CHECK_STRCASEEQ failed: __null == "siht" ( vs. siht)F20211111 12:56:38.639931  3398 logging_unittest.cc:640] CHECK_STRCASEEQ failed: "this" == "siht" (this vs. siht)F20211111 12:56:38.639936  3398 logging_unittest.cc:641] CHECK_STRNE failed: __null != __null ( vs. )F20211111 12:56:38.639942  3398 logging_unittest.cc:642] CHECK_STRNE failed: "this" != "this" (this vs. this)F20211111 12:56:38.639947  3398 logging_unittest.cc:643] CHECK_STREQ failed: (string("a")+"b").c_str() == "abc" (ab vs. abc)F20211111 12:56:38.639991  3398 logging_unittest.cc:658] Check failed: 'static_cast<void *>(NULL)' Must be non NULL 
*** Check failure stack trace: ***
Passed 8 tests

PASS
Test with golden file failed. We'll try to show the diff:
--- /build/glog/src/logging_unittest.err.munged 2021-11-11 12:56:38.885929007 +0000
+++ /tmp/captured.err.munged    2021-11-11 12:56:38.885929007 +0000
@@ -1,288 +1,9 @@
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=0 stderrthreshold=2 logtostderr=0 alsologtostderr=0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
- WARNING: Logging before InitGoogleLogging() is written to STDERR
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info every 1 expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=0 stderrthreshold=0 logtostderr=0 alsologtostderr=0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info every 1 expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] foo bar 10 3.4
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 1: Success [0]
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 3, iteration 1
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 4, iteration 1
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 5, iteration 1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 1
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if less than 3 every 2, iteration 1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 2
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 3: No such file or directory [2]
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 3
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if less than 3 every 2, iteration 3
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 3, iteration 4
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 4
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 5: Interrupted system call [4]
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 4, iteration 5
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 5
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 5, iteration 6
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 6
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 7: No such device or address [6]
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 3, iteration 7
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 7
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 8
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 9: Exec format error [8]
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 4, iteration 9
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 9
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 3, iteration 10
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 10
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if this
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] array
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] const array
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] foo 1000 0000001000 3e8
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] inner
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] outer
- no prefix
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: foo bar 10 3.400000
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: array
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: const array
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: ptr 0x12345678
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: ptr (nil)
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: foo 1000 0000001000 3e8
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: foo 1000
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: foo 1000
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: RAW_LOG ERROR: The Message was too long!
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: RAW_LOG ERROR: The Message was too long!
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 0 on
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 1 on
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 2 on
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=0 stderrthreshold=0 logtostderr=0 alsologtostderr=0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info every 1 expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=1 stderrthreshold=0 logtostderr=0 alsologtostderr=0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog 1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info every 1 expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=-1 stderrthreshold=0 logtostderr=0 alsologtostderr=0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info every 1 expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=0 stderrthreshold=1 logtostderr=0 alsologtostderr=0
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=0 stderrthreshold=2 logtostderr=0 alsologtostderr=0
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=0 stderrthreshold=3 logtostderr=0 alsologtostderr=0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=0 stderrthreshold=3 logtostderr=1 alsologtostderr=0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info every 1 expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=0 stderrthreshold=3 logtostderr=0 alsologtostderr=1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info every 1 expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=1 stderrthreshold=1 logtostderr=0 alsologtostderr=0
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Test: v=1 stderrthreshold=3 logtostderr=0 alsologtostderr=1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: vlog 1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog 1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if -1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if info every 1 expr
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] log_if error every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] vlog_if 0 every 1 expr
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_STRING: reported info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_STRING: reported warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_STRING: reported error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Captured by LOG_STRING: LOG_STRING: collected info
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Captured by LOG_STRING: LOG_STRING: collected warning
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Captured by LOG_STRING: LOG_STRING: collected error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK: collected info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK: collected warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK: collected error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK: reported info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK: reported warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK: reported error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Captured by LOG_TO_SINK:
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK: collected info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK: collected warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK: collected error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK_BUT_NOT_TO_LOGFILE: collected info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK_BUT_NOT_TO_LOGFILE: collected warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_SINK_BUT_NOT_TO_LOGFILE: collected error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_STRING: collected info
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Captured by LOG_TO_STRING: LOG_TO_STRING: collected info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_STRING: collected warning
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Captured by LOG_TO_STRING: LOG_TO_STRING: collected warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_STRING: collected error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Captured by LOG_TO_STRING: LOG_TO_STRING: collected error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_STRING: reported info
-WYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_STRING: reported warning
-EYEARDATE TIME__ THREADID logging_unittest.cc:LINE] LOG_TO_STRING: reported error
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Message 1
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Buffering
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Buffered
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Waiting
-IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Sink got a messages
+ 
+ 
+ 
+ 
+ 
+ 
 IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] RAW: Waited
 IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Sink is sending out a message: IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Message 1
 IYEARDATE TIME__ THREADID logging_unittest.cc:LINE] Have 0 left
diff command was failed.
Check failed: MungeAndDiffTestStderr(FLAGS_test_srcdir + "/src/logging_unittest.err")

 9/14 Test  #8: cmake_package_config_generate ....   Passed    0.35 sec
      Start  9: cmake_package_config_build
10/14 Test  #9: cmake_package_config_build .......   Passed    0.62 sec
      Start 10: cmake_package_config_cleanup
11/14 Test #10: cmake_package_config_cleanup .....   Passed    0.01 sec
12/14 Test #14: cleanup_with_prefix ..............   Passed    3.04 sec
13/14 Test #13: cleanup_immediately ..............   Passed    3.04 sec
      Start 12: cleanup_logdir
14/14 Test #12: cleanup_logdir ...................   Passed    0.01 sec

93% tests passed, 1 tests failed out of 14

Total Test time (real) =   3.06 sec

The following tests FAILED:
          2 - logging (Failed)
Errors while running CTest

This will be relevant when we upgrade to the next glog release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants