Closed vashirov closed 1 year ago
b1bdf5021..4ba619075 389-ds-base-2.1 -> 389-ds-base-2.1 c4a0abf6c..d2af71cf1 389-ds-base-2.2 -> 389-ds-base-2.2 7c7afb78f..f01a61332 389-ds-base-2.3 -> 389-ds-base-2.3
Seeing a regression in nightly CI tests: (missing a str() in is_dbi in import test ) ( I will create a new pr to fix it )
b62bd43e8..2dab9224d main -> main 434d63e84..ed0093d02 389-ds-base-2.3 -> 389-ds-base-2.3 94144bb5c..5cc25029e 389-ds-base-2.2 -> 389-ds-base-2.2 fea4a6f61..c714ed8a7 389-ds-base-2.1 -> 389-ds-base-2.1
Issue Description
dbscan()
in lib389 extracts information from the database file. Most of the time the information returned bydbscan
executable is strings. But when attribute encryption or changelog encryption is enabled, the database can contain values that can't be parsed as a string in Python.By default subprocess output is considered bytes: https://docs.python.org/3/library/subprocess.html#subprocess.CompletedProcess.stdout
But we explicitly use
text=True
to indicate that it is supposed to be a string: https://github.com/389ds/389-ds-base/blob/96959cf7b67be8b544efa25b6ad813c0034841b7/src/lib389/lib389/__init__.py#L3072I think we should change
dbscan()
to always return bytes.