I have a question related to the dremio.conf configuration file.
I see that in the template in docs there is:
flight: {
enabled: true,
port: 32010,
# Authentication mode for the Arrow FlightServer endpoint.
# There are two modes:
# - legacy.arrow.flight.auth
# - arrow.flight.auth2
# legacy.arrow.flight.auth is backwards compatible and will be deprecated in the future.
# arrow.flight.auth2 is the new and preferred Arrow Flight authentication method.
auth.mode: "arrow.flight.auth2"
}
in my configuration I didn’t set up those properties. Even though, I am able to connect using Flight SQL client. So I believe there is a default value for the above properties. May I know what are the defaults?
Furthermore what is the difference between these two modes:
This was implemented to support the two authentication methods that will be available in Arrow Flight Server GA
This is a DremioConfig option rather than a support key because the option needs to be configured on Dremio startup and it cannot be changed while Dremio is running.
The new auth method will be on by default.
The new DremioConfig option added:
services.flight.auth.mode
This option has two configuration:
legacy.arrow.flight.auth
arrow.flight.auth2
For Arrow Flight Server GA, the default value for services.flight.auth.mode will be arrow.flight.auth2.
I have used ‘arrow.flight.auth2’ mode and I am getting an error like ‘Flight returned authenticated error, with message: User is not authenticated’ while I connect via windows arrow filght ODBC Sql driver.
Also going through server.log file of dremio I found the following error there.
‘User session is not available in session manager’.
I have disabled ‘use encryption’ tickbox on windows arrow flight odbc driver as well as i have set ‘flight.ssl.enabled’ to ‘false’ in dremio.conf file on linux.
I have set ‘flight.use_Session_service’ as ‘false’.
In case you have some idea, please throw some lights.
Dremio Version : 23.0.0
Apache Arrow Flight SQL ODBC Drivers Version on Windows - 0.9.1.194
We are using a dremio user and not an external auth.
You have explained and suggested the setup which seems to be for Linux OS.
So you are suggesting just to try connecting to Dremio using ODBC drivers on linux ? I will set it up and revert here once done.
Now I am attaching here the screenshots of the errors which I am getting as well as the dremio.conf file.
I have tried 2 different configs. one is by keeping ‘flight.use_session_Service’ as ‘true’ and the other is by keeping the same config as ‘false’.
When I try keeping ‘flight.use_session_service’ as ‘false’, it gives me the error as ‘User is not authenticated’, where as when i keept it as ‘true’, I am getting an error related to gRPC which is also attached.
Hi, I have made default installation of dremio oss, but I can’t connect to arrowflight port. I have already inspected dremio.conf, but arrowflight has only flight.use_session_service true and port 32010 is not exposed on the container. How can I enable arrowflight port after the dremio instance was created ?IS there a way ?
flight: {
enabled: true,
port: 32010,
# Authentication mode for the Arrow FlightServer endpoint.
# There are two modes:
# - legacy.arrow.flight.auth
# - arrow.flight.auth2
# legacy.arrow.flight.auth is backwards compatible and will be deprecated in the future.
# arrow.flight.auth2 is the new and preferred Arrow Flight authentication method.
auth.mode: "arrow.flight.auth2"
}