Skip to content

SalesforceHook : How to avoid login to salesforce and reuse a recent login session #30016

@gbonazzoli

Description

@gbonazzoli

Apache Airflow Provider(s)

salesforce

Versions of Apache Airflow Providers

apache-airflow-providers-celery==3.1.0
apache-airflow-providers-cncf-kubernetes==5.2.2
apache-airflow-providers-common-sql==1.3.3
apache-airflow-providers-ftp==3.3.0
apache-airflow-providers-http==4.1.1
apache-airflow-providers-imap==3.1.1
apache-airflow-providers-microsoft-mssql==3.3.2
apache-airflow-providers-microsoft-winrm==3.1.1
apache-airflow-providers-mysql==4.0.0
apache-airflow-providers-openfaas==3.1.0
apache-airflow-providers-oracle==2.2.3
apache-airflow-providers-postgres==5.4.0
apache-airflow-providers-redis==3.1.0
apache-airflow-providers-salesforce==5.3.0
apache-airflow-providers-samba==4.1.0
apache-airflow-providers-sftp==4.2.1
apache-airflow-providers-sqlite==3.3.1
apache-airflow-providers-ssh==3.4.0

Apache Airflow version

2.5.1

Operating System

Ubuntu 20.04

Deployment

Virtualenv installation

Deployment details

No response

What happened

I tried to connect to salesforce by using session_id and session parameters but it seems that they are ignored.

        sfconn = SalesforceHook(salesforce_conn_id = SALESFORCE_AIRFLOW_CONNECTION_ID, session_id = None, session = None)
        sf = sfconn.get_conn()
        session_id = sf.session_id
        session = sf.session
        logging.info('BEG 100 Connections')
        for i in range(100):
            sfconn = SalesforceHook(salesforce_conn_id = SALESFORCE_AIRFLOW_CONNECTION_ID, session_id = session_id, session = session)
            sf = sfconn.get_conn()
        logging.info('END 100 Connections')

What you think should happen instead

I think that if the session_id and session parmeters were used the total time of the 100 connections were well below from the case were session_id = None, session = None

But this do not happen.

How to reproduce

Run the code.

Anything else

No response

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:providerskind:bugThis is a clearly a bugneeds-triagelabel for new issues that we didn't triage yet

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions