1 2 Previous Next 19 Replies Latest reply on Dec 2, 2014 10:14 AM by James Golden

    Tabcmd --synchronous throwing ORA 01013 on refresh

    James Golden

      Hey fellow admins,

       

      We're trying to inosporate a universal scheduling tool, using tabcmd --synchronous for some of our top extracts.  So far, this seems to be working okay, except in one particular spot.

       

      It seems Data Sorces are hitting a threshold at 2 hours .  I have modified almost every timeout setting I can find, but still no luck.  The general consensus online is that this is a timeout issue (the error is relatively vague, but consistently timing out a @ 2 hours, 1 minute).

       

      We are on version 8.1.9, windows 2008, with one gateway and two even worker servers for High Availability).  Support has been researching but no luck yet.  Does anyone have any ideas?

       

      Thanks,

      Jamie

        • 1. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
          Shafi Mohammad

          Hi Jamie,

           

          We ran into this kind of issue with a particular extract refresh. In our case adjusting the backgrounder timeout fixed the issue.

          Please see the below links.

           

          Error "Job timed out and cancelled" After Upgrading | Tableau Software

          Error “Extract failed to complete in 7200 seconds” | Tableau Software

          http://kb.tableausoftware.com/articles/knowledgebase/timeout-error

           

          The backgrounder timeout was set to 2 hr by default and from v8.2.1 there is an additional one hour add-on to the timeout. However these settings should be tweaked more than once to find out the suitable timeout value that would allow the refresh to complete within it.

          Perhaps you may run the refresh from the web interface and monitor the job to see if its timing out on tableau server or ends up with an ORA 01013 error. If the tabcmd logs show an 'ORA' error then it could be an issue with the source of the extract itself.

           

          Regards,

          Shafi

          1 of 1 people found this helpful
          • 2. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
            James Golden

            Hi Shafi,

             

            Unforunately, we are running on 8.1.9.  I have modified all the timeout settings that are documented, and some that are not, per Tableau support.  I modifed most of these to 6 hours; but at least much longer than two hours.

             

            This jobs runs fine on Tableau server, taking advantage of backgrounders, and usually takes up towards 5 hours.  It also runs through Tabcmd using the backgrounders.

             

            However, the problem I see appears tied to using Tabcmd --synchronous, which processes refreshes immediately thru the data engine.  There is a data server timeout which is not doumented, and which is using minutes, not seconds, which I changed to 720, with no luck.

             

            I am contemplating upgrading to 8.2.4 or 5 if available, and testing again.

             

            Thanks for your feedback.

            • 3. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
              Jeff Strauss

              Have you by chance tweaked "wgserver.session.idle_limit"?  This is the session duration set to 4 hours by default.  If for some reason you changed it to 2 hours, and the dataengine is picked up as an applicable activity, then the session could potentially timeout.  Just something to look at.

              • 4. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                James Golden

                Thanks - I have not looked at that.  I considered that, but haven't made

                changes because of the default.  Now that you mention it, I'm going to

                modify it just to see if this has any impact.  Can't hurt.

                 

                 

                 

                 

                 

                 

                From:

                Jeffrey Strauss <tableaucommunity@tableausoftware.com>

                To:

                James Golden <jgolden@oattravel.com>,

                Date:

                11/25/2014 10:25 AM

                Subject:

                Re:  - Tabcmd --synchronous throwing ORA 01013 on

                refresh

                 

                 

                 

                 

                Tableau Support Community

                 

                Tabcmd --synchronous throwing ORA 01013 on refresh

                reply from Jeffrey Strauss in Server Administration - View the full

                discussion

                 

                Have you by chance tweaked "wgserver.session.idle_limit"?  This is the

                session duration set to 4 hours by default.  If for some reason you

                changed it to 2 hours, and the dataengine is picked up as an applicable

                activity, then the session could potentially timeout.  Just something to

                look at.

                 

                 

                Reply to this message by replying to this email, or go to the message on

                Tableau Support Community

                Start a new discussion in Server Administration by email or at Tableau

                Support Community

                • 5. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                  Jeff Strauss

                  Another option definitely worth trying is to append a --timeout 99999 onto your tabcmd.  See the attached for more details, I hope this helps.

                   

                  tabcmd global --timeout parameter

                   

                  Addressing Timeouts when Publishing or Viewing | Tableau Software

                  • 6. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                    James Golden

                    Thanks Jeffrey,

                     

                    I have a --timeout 21600 on the command.  Stills times out at 2 hours.

                    Very odd.

                     

                     

                     

                     

                     

                     

                    From:

                    Jeffrey Strauss <tableaucommunity@tableausoftware.com>

                    To:

                    James Golden <jgolden@oattravel.com>,

                    Date:

                    11/25/2014 02:23 PM

                    Subject:

                    Re:  - Tabcmd --synchronous throwing ORA 01013 on

                    refresh

                     

                     

                     

                     

                    Tableau Support Community

                     

                    Tabcmd --synchronous throwing ORA 01013 on refresh

                    reply from Jeffrey Strauss in Server Administration - View the full

                    discussion

                     

                    Another option definitely worth trying is to append a --timeout 99999 onto

                    your tabcmd.  See the attached for more details, I hope this helps.

                     

                    tabcmd global --timeout parameter

                     

                    Addressing Timeouts when Publishing or Viewing | Tableau Software

                     

                     

                    Reply to this message by replying to this email, or go to the message on

                    Tableau Support Community

                    Start a new discussion in Server Administration by email or at Tableau

                    Support Community

                    • 7. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                      Jeff Strauss

                      are you ever doing a tabcmd logout earlier in your script?

                      • 8. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                        James Golden

                        We were doing a Tabcmd logout, but we were running into issues with other

                        Tabcmd.  Currently, I'm just testing this one extract, logging in, and

                        letting it run until it errors out.

                        • 9. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                          Jeff Strauss

                          James, I've run into similar issues with session expiry, though I'm not sure if they're exactly the same.  Sorry for throwing suggestions out there that may not have worked yet.  But sometimes it does take a few tries especially when I don't have knowledge of your script or environment.

                           

                          Here are a few more insights that I have learned / researched , take them for what they are worth.

                           

                          - I am looking into the possibility of avoiding the use of tabcmd login.  I think this is possible if you add the server, user, and password tags onto each of the individual tabcmd's.  I still have to look at what this does to session management, I think it reuses the same session, but may go assign a new token.  This can be run either cookieless using a tag called --no-cookie or with cookies in which case for tabcmd because there is no real browser session, there is a tabcmd.txt file stored (in my case it's on the server under C:\Users\DTM_Tableau_SVC6\AppData\Roaming\Tableau).

                           

                          - The benefit of doing the above is that the server, user, password tags are specified at the top of the script (as variables) and then can be tagged to each individual command so we don't get a session expiry.  I found yesterday in the admin guide that if there is no new activity for 5 minutes (for whatever reason), then the token gets expired and it seems I get session expiry on subsequent commands.

                           

                          "An authentication token is stored so subsequent commands can be run without including these options. This

                          token remains valid for five minutes after the last command that used it."

                           

                          - There's pros and cons of running cookieless.  The pro that I've found is that the cookie isn't created in the above folder and it allows you to run multiple commands using the same run as account and it creates multiple sessions within the server itself for each tabcmd.  The downside is that these sessions cannot be killed with tabcmd logout and the sessions linger on the server for the duration of the wgsession timeout.

                           

                          - Also, if you're running multiple scripts at the same time and running (by default) with the cookie option, then you better go and use unique runas id's.  This is what I'm doing because when I tried to run with the same id and the second script started up and there was overlap, the tabcmd logout from the first script caused the "session expriy" error.

                           

                          - I'm still not quite sure on the applicability of the --timeout tag.  I don't think it really means what you think it means in terms of timeout for that command.  Rather I believe it means the allowed response time for assigning a new token.  By default it's 30 seconds.

                           

                           

                          I hope this helps...

                          • 10. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                            James Golden

                            Thanks - I appreciate all feedback.  You never know when the next response

                            is the right hit.

                            • 11. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                              Jeff Strauss

                              if you want, attach your script and I will have a look.

                              • 12. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                                James Golden

                                Thanks.

                                 

                                Basically, this all we're doing:

                                 

                                cd..

                                 

                                cd Program Files\Tableau\Tableau Server\8.1\bin

                                 

                                tabcmd login -s http://localhost:8000 -u xxxxxxxx -p xxxxxxx

                                 

                                tabcmd refreshextracts --synchronous --project "Email" --datasource "Email

                                Segm Prod Extract New" --timeout 21600

                                 

                                 

                                 

                                 

                                 

                                 

                                From:

                                Jeffrey Strauss <tableaucommunity@tableausoftware.com>

                                To:

                                James Golden <jgolden@oattravel.com>,

                                Date:

                                11/26/2014 02:18 PM

                                Subject:

                                Re:  - Tabcmd --synchronous throwing ORA 01013 on

                                refresh

                                 

                                 

                                 

                                 

                                Tableau Support Community

                                 

                                Tabcmd --synchronous throwing ORA 01013 on refresh

                                reply from Jeffrey Strauss in Server Administration - View the full

                                discussion

                                 

                                if you want, attach your script and I will have a look.

                                 

                                 

                                Reply to this message by replying to this email, or go to the message on

                                Tableau Support Community

                                Start a new discussion in Server Administration by email or at Tableau

                                Support Community

                                • 13. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                                  Jeff Strauss

                                  Try this:

                                   

                                  - Add the --timeout for to the login command as well.  The login instantiates the session and I'm not sure whether the timeout applies to the session or the individual command, therefore within my scripts I just add the timeout tag to both.

                                   

                                  - Add the -p tag to the refreshextracts.  Not sure why, but if the session happens to timeout, then the password token is lost.

                                   

                                  - Add a tabcmd logout at the end

                                   

                                  - Check with your Oracle DBA's to see if there is some kind of 2 hour timeout within Oracle.  Looking at it after the long weekend, I realized that the error that you are getting is prefixed by Oracle meaning that Oracle is returning an error code back to Tableau.

                                  • 14. Re: Tabcmd --synchronous throwing ORA 01013 on refresh
                                    James Golden

                                    Thanks - we had a bunch of Tabcmds running, and removed the logout

                                    intentionally.  However, our issue was only with data sources running

                                    longer than 2 hours, but I didn't think to add timeout to the login.

                                    That's a good idea.

                                     

                                    As for the error initiated from Oracle, while this is true, it says the

                                    requestor is asking oracle to cancel the session; and we checked - there

                                    are no timeouts to the the Oracle DB.  We have many other jobs that take

                                    longer than two hours for DW ETL.

                                     

                                    Great suggestions - I'll let you know if it works (It makes a lot of

                                    sense, in that data source extracts via --synchronous are processed

                                    through the data engine.  This long-running command may be timing out for

                                    login at 2 hours.

                                     

                                    Thanks - really appreciate it.

                                     

                                     

                                     

                                     

                                    From:

                                    Jeffrey Strauss <tableaucommunity@tableausoftware.com>

                                    To:

                                    James Golden <jgolden@oattravel.com>,

                                    Date:

                                    12/01/2014 09:59 AM

                                    Subject:

                                    Re:  - Tabcmd --synchronous throwing ORA 01013 on

                                    refresh

                                     

                                     

                                     

                                     

                                    Tableau Support Community

                                     

                                    Tabcmd --synchronous throwing ORA 01013 on refresh

                                    reply from Jeffrey Strauss in Server Administration - View the full

                                    discussion

                                     

                                    Try this:

                                     

                                    - Add the --timeout for to the login command as well.  The login

                                    instantiates the session and I'm not sure whether the timeout applies to

                                    the session or the individual command, therefore within my scripts I just

                                    add the timeout tag to both.

                                     

                                    - Add the -p tag to the refreshextracts.  Not sure why, but if the session

                                    happens to timeout, then the password token is lost.

                                     

                                    - Add a tabcmd logout at the end

                                     

                                    - Check with your Oracle DBA's to see if there is some kind of 2 hour

                                    timeout within Oracle.  Looking at it after the long weekend, I realized

                                    that the error that you are getting is prefixed by Oracle meaning that

                                    Oracle is returning an error code back to Tableau.

                                     

                                     

                                    Reply to this message by replying to this email, or go to the message on

                                    Tableau Support Community

                                    Start a new discussion in Server Administration by email or at Tableau

                                    Support Community

                                    1 2 Previous Next