Flink sql client throws ERROR when executing sql statment - apache-flink

env:
intel chip macbook air 2017 with macOS Monterey 12.5
flink 1.15
mysql 5.7
I'm trying to set up a demo to sync one table to another table in mysql. However, i encountered some issue when executing sql statement in FLINK SQL CLIENT.
Let's say there's a table named product in mysql. Then I start flink and sql client, "CREATE TABLE" and execute "select * from products". Terminal returned ERROR message which says [ERROR] Could not execute SQL statement. Reason:
java.lang.ClassNotFoundException: io.debezium.relational.history.AbstractSchemaHistory
I downloaded debezium-core jar of most recent version and put it under lib path. Then it raised another error
[ERROR] Could not execute SQL statement. Reason:
java.lang.ClassNotFoundException: io.debezium.relational.history.DatabaseHistory
I checked version 2.0.0 alpha and 2.0.0 beta, DatabaseHistory only appear in version alpha and AbstractSchemaHistory only appear in version beta.
If I put those two jar files into the lib path. I get [ERROR] Could not execute SQL statement. Reason:
java.lang.NoSuchFieldError: TOPIC_PREFIX
enter image description here
Is there anyone who could give me some advice, thanks in advance.

Related

liquibase.exception.DatabaseException: Connection could not be created with driver com.microsoft.sqlserver.jdbc.SQLServerDriver

I am developing my application in SpringBoot which uses liquibase to update my ms-sql database.
This worked fine till now, but now I am trying to update everything to the latest version:
I changed java from 15 to 17.
I also updated liquibase-maven-plugin to 4.5.0.
mssql-jdbc dependency for liquibase is: mssql-jdbc:9.4.0.jre16
The new mssql-jdbc_auth-9.4.0.x64.dll file is moved to this folder:
c:\apps\Java\x64\jdk-17\bin\ (this is my java location).
My IntelliJ is set to use java 17 (JAVA_HOME is also configured to
the 17 path)
the version of Microsoft SQL Server Express (64-bit): 11.0.2100.60
So I think I did everything, but still, when I try to run my maven, I get the following error:
[ERROR] Failed to execute goal org.liquibase:liquibase-maven-plugin:4.5.0:update (myDatabase) on project my-project:
[ERROR] Error setting up or running Liquibase:
[ERROR] liquibase.exception.DatabaseException: liquibase.exception.DatabaseException: liquibase.exception.DatabaseException: Connection could not be created to jdbc:sqlserver://localhost:1433;databaseName=My_Database;integratedSecurity=true with driver com.microsoft.sqlserver.jdbc.SQLServerDriver. The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: "The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]"

MSSQL Insatalation error - perflib 2.0 counter removal failed with exit code 2

I am trying to install SQL2019 Server.
comming This Error. cant Installation
TITLE: Microsoft SQL Server 2019 Setup
The following error has occurred:
PerfLib 2.0 counter removal failed with exit code 2. Command line:
C:\WINDOWS\system32\unlodctr.exe /m:hkengperfctr.xml from directory
C:\Program Files\Microsoft SQL Server\150\Shared.
• There is incomplete uninstallation of SQL server and we are not able to install in SQL server in your PC due to below errors.
• Database Engine services Failed
• PerfLib 2.0 counter removal failed with exit code 2.
• The MOF compiler could not connect with the WMI server.
• Below is troubleshooter link and search window
https://support.microsoft.com/en-us/topic/fix-problems-that-block-programs-from-being-installed-or-removed-cca7d1b6-65a9-3d98-426b-e9f927e1eb4d
• Here, you have to download the troubleshooter in your PC
• After download, you have to run the file and you will get below window & click Next
• Choose based on issue, its related to Installation or Uninstallation
• Choose one by one all relevant SQL Server content and uninstall, it will repeat each time for one item. Once you have done with all SQL server content, then only uninstall successful. Now you have good to install and without any issue.

Run ssis package in agent job while both are on separate machines

I am trying to run ssis package through agent jobs. The packages and the sql server are on different machines.
When the agent job tries to run ssis package step the job fails with following error:
Executed as user: Domain\username. Microsoft (R) SQL
Server Execute Package Utility Version 13.0.5026.0 for 64-bit
Copyright (C) 2016 Microsoft. All rights reserved. Started:
1:42:42 AM Error: 2020-01-23 01:42:42.49 Code: 0xC0011007
Source: {07BB41B6-D0DF-4349-B9AE-498397D214D7} Description:
Unable to load the package as XML because of package does not have a
valid XML format. A specific XML parser error will be posted. End
Error Error: 2020-01-23 01:42:42.49 Code: 0xC0011002 Source:
{07BB41B6-D0DF-4349-B9AE-498397D214D7} Description: Failed to
open package file
"D:\ssis_packages\package.dtsx"
due to error 0x80070003 "The system cannot find the path specified.".
This occurs when loading a package and the file cannot be opened or
loaded correctly into the XML document. This can be the result of
specifying an incorrect file name when calling LoadPackage or the
specified XML file has an incorrect format. End Error Could not load
package
"D:\ssis_packages\package.dtsx"
because of error 0xC0011002. Description: Failed to open package file
"D:\ssis_packages\CoreLogic\CoreLogicSSIS\Real_Estate_Monthly.dtsx"
due to error 0x80070003 "The system cannot find the path specified.".
This occurs when loading a package and the file cannot be opened or
loaded correctly into the XML document. This can be the result of
specifying an incorrect file name when calling LoadPackage or the
specified XML file has an incorrect format. Source:
{07BB41B6-D0DF-4349-B9AE-498397D214D7} Started: 1:42:42 AM
Finished: 1:42:42 AM Elapsed: 0.047 seconds. The package could not
be found. The step failed.
I need some suggestion as what is the best way to run ssis package when sql server and packages are on different machines.
There can be below defined reasons and solutions.
1. The error says it cannot find the package. Just double-check if this is the correct path for your package:
D:\ssis_packages\CoreLogic\CoreLogicSSIS\Real_Estate_Monthly.dtsx
2. It looks like a local path, so if indeed your package is on the D: Drive of another server make sure to add the server name in front of the path:
//server-name/ d$/
ssis_packages\CoreLogic\CoreLogicSSIS\Real_Estate_Monthly.dtsx
3. Grant the account running your SQL Agent job (I am guessing it's the SQL Agent account, but you should double-check that) access rights to the folder where your SSIS package is stored.
4. If the above did not solve the issue, also check if the SSIS package and your SSIS installation on the server where you are running it are the same. Running a 32bit SSIS package on a 64-bit system/SSIS will result in a similar error message.

Liquibase diff gives constraint error

I get this error when I try with both command line and Maven invocations:
Diff Results:
Unexpected error running Liquibase: liquibase.exception.DatabaseException: liquibase.exception.DatabaseException: Unknown constraint type: 3
This is using a SQL Server DB. Created both the reference and target using liquibase:update.
Properties:
driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
url=jdbc:sqlserver://localhost:11433;databaseName=DB
username=user
password=pass
referenceUrl=jdbc:sqlserver://localhost:11433;databaseName=DBRef
referenceUsername=user
referencePassword=pass
We use a combination of Liquibase/MS-SQL database and had a similar issue when we recently upgraded our driver to Microsoft's latest release (6.4.0.jre8).
As #SteveDonie says in his comment, the issue is with "oldish" version of liquibase and "newish" version of MS-SQL driver. Details behind the reason for this problem can be found in this liquibase JIRA case:
https://liquibase.jira.com/browse/CORE-3141
To solve this, we tried upgrading the liquibase version to the latest as on date (3.6.1) and it works!! You may also try to downgrade the version of your MS-SQL driver, but I would say that isn't a good option - it's better to upgrade than downgrade unless you've some pressing needs to that.

Linux MS SQL Server evaluation expired, can't upgrade to developer

When I installed MS SQL Server for Linux half a year ago, there was no way to choose between evaluation and developer. Now the evaluation period has expired and I can't install a developer version. I don't care about any of my databases and I have tried to remove SQL Server before installing it again. The installation is fine but when I run mssql-conf setup I get the following:
Configuring SQL Server...
Error: The evaluation period has expired.
This program has encountered a fatal error and cannot continue running.
The following diagnostic information is available:
Reason: 0x00000001
Signal: SIGSEGV - Segmentation fault (11)
Stacktrace: 0000564434051ee7 00007f9892387b20 00005644340236c2
000056443404a8db 000056443404a059
Process: 7228 - sqlservr
Thread: 7253 (application thread 0x1060)
Instance Id: 357ebf86-214d-4100-b14f-cb62b380917e
Crash Id:
Build stamp: 3db4cdd88f9bbf816f82e0ab6e17825a0a0f8b2ef98a5c67b521be0ed19c297c
/opt/mssql/lib/mssql-conf/invokesqlservr.sh: line 15: 7227 Aborted sudo -EH -u mssql /bin/bash -c "$CMDLINE"
Setup has completed successfully. SQL Server is now starting.
The last line is wrong, SQL Server does not start.
I assume that uninstallation leaves some trace of my old evaluation that is detected when I try to set up the new developer installation. Anyone knows if there is a way to get rid of whatever is blocking the new install?
TIA,
Gunnar
Shane's comment answered the question. Replacing the repository according to https://learn.microsoft.com/en-us/sql/linux/quickstart-install-connect-suse did the trick!

Resources