mirror of
https://github.com/open-metadata/OpenMetadata.git
synced 2025-12-13 08:37:03 +00:00
FIX - Check ingestion with incoming server version (#24543)
This commit is contained in:
parent
8ecfa7891f
commit
d833941bf5
@ -151,8 +151,8 @@ public class MeteredPipelineServiceClient implements PipelineServiceClientInterf
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean validServerClientVersions(String clientVersion) {
|
||||
return decoratedClient.validServerClientVersions(clientVersion);
|
||||
public Boolean validServerClientVersions(String clientVersion, String serverVersion) {
|
||||
return decoratedClient.validServerClientVersions(clientVersion, serverVersion);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -460,7 +460,7 @@ public class AirflowRESTClient extends PipelineServiceClient {
|
||||
if (response.statusCode() == 200) {
|
||||
JSONObject responseJSON = new JSONObject(response.body());
|
||||
String ingestionVersion = responseJSON.getString("version");
|
||||
return Boolean.TRUE.equals(validServerClientVersions(ingestionVersion))
|
||||
return validServerClientVersions(ingestionVersion, SERVER_VERSION)
|
||||
? buildHealthyStatus(ingestionVersion)
|
||||
: buildUnhealthyStatus(
|
||||
buildVersionMismatchErrorMessage(ingestionVersion, SERVER_VERSION));
|
||||
|
||||
@ -71,7 +71,7 @@ public interface PipelineServiceClientInterface {
|
||||
|
||||
String getBasicAuthenticationHeader(String username, String password);
|
||||
|
||||
Boolean validServerClientVersions(String clientVersion);
|
||||
Boolean validServerClientVersions(String clientVersion, String serverVersion);
|
||||
|
||||
Response getHostIp();
|
||||
|
||||
|
||||
@ -126,9 +126,20 @@ public abstract class PipelineServiceClient implements PipelineServiceClientInte
|
||||
}
|
||||
}
|
||||
|
||||
private String getMajorMinorVersion(String fullVersion) {
|
||||
String[] versionParts = fullVersion.split("\\.");
|
||||
if (versionParts.length >= 2) {
|
||||
return versionParts[0] + "." + versionParts[1];
|
||||
}
|
||||
return fullVersion;
|
||||
}
|
||||
|
||||
@Override
|
||||
public final Boolean validServerClientVersions(String clientVersion) {
|
||||
return getVersionFromString(clientVersion).equals(getVersionFromString(SERVER_VERSION));
|
||||
public final Boolean validServerClientVersions(String clientVersion, String serverVersion) {
|
||||
String clientFullVersion = getVersionFromString(clientVersion);
|
||||
String serverFullVersion = getVersionFromString(serverVersion);
|
||||
|
||||
return getMajorMinorVersion(clientFullVersion).equals(getMajorMinorVersion(serverFullVersion));
|
||||
}
|
||||
|
||||
public String buildVersionMismatchErrorMessage(String ingestionVersion, String serverVersion) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user