Troubleshooting¶
Symptoms, causes and fixes for common Flow Scheduler problems, from the web interface to runs, e-mail, sign-in and high availability.
Where to look first¶
| Source | Location |
|---|---|
| Flow Scheduler log | C:\Program Files\Infolytik\MetaMiner\server\logs\flowscheduler.log |
| Flow Scheduler start-up log | server\logs\flowscheduler.start.log |
| Tableau calls made for the Flow Scheduler | server\logs\FSS_api_calls.log (written by the MetaMiner Server, MMS) |
| MMS log | server\logs\server.log |
| Run details | Run History on the flow, or Admin > Task Analyze > Monitor |
| Service state | Windows Services: MetaMinerFSS (MetaMiner Flow Scheduler Service) and metaminer |
Starting MetaMiner clears the log folder. Copy the logs before you restart if you plan to contact support.
Web interface and service¶
Symptom: /flowscheduler/ returns an error or a blank page
Cause: MMS decides whether to serve the web interface when it starts. It was not restarted after Enable Flow Scheduler (FSS) was saved, or the setting was not saved.
Fix:
- Check
server\MetaMinerServer.propertiesforflowscheduler.enabled=true. - Restart MetaMiner from MMA with Stop Server and Start Server, so the Flow Scheduler starts too.
- Open
https://<mms-host>:<port>/flowscheduler/with the trailing slash (default port 49714;http://only when SSL is not enabled on MMS).
Symptom: the page says 'Flow Scheduler is offline'
Cause: The browser cannot reach MMS: it is stopped, restarting, or the network path is down. The page checks again on its own.
Fix: Start MetaMiner from MetaMiner Administrator (MMA) with Start Server, or wait for MMS to finish starting, then click Retry now.
Symptom: a banner says 'Flow Scheduler Service is not running'
Cause: MMS serves the page, but the MetaMinerFSS service is stopped.
Fix: Start MetaMiner from MMA (Start Server), or start MetaMinerFSS in Windows Services. If it stops again, read server\logs\flowscheduler.start.log. Common causes: flowscheduler.enabled is not true (the service exits at once), the MetaMiner Database (MMDB) is not reachable, or port 49716 is used by another program.
Symptom: a banner says the service 'cannot reach Tableau through MMS'
Cause: The Flow Scheduler is running but cannot reach Tableau Server through MMS. Existing data is shown; new runs cannot start.
Fix: Check that MMS is running and that the MMS host can reach Tableau Server. Scheduled runs wait while this lasts (see WAITING_FOR_MMS and SERVER_DOWN below).
Symptom: the MMA FSS Configuration dialog says 'FSS service offline'
Cause: MMA talks to the Flow Scheduler on the same host. The service is stopped, or MMA runs on another machine.
Fix: Start MetaMinerFSS, and run MMA on the MetaMiner host.
Symptom: the Tableau Environment list on the sign-in page is empty
Cause: No environment is enabled for the Flow Scheduler.
Fix: In MMA, Tools > FSS Configuration... > Environments, select Enabled for the environment. See Allowed Environments.
Symptom: the Admin tab is missing
Cause: Your Tableau user name is not on the Flow Scheduler admin list.
Fix: Add it in MMA on Tools > FSS Configuration... > Admins, then reload the page.
Runs¶
Symptom: a task has a Next Run time but never fires
Cause: A firing condition is not met: the environment is not enabled in MMA or for the Flow Scheduler, the schedule or the task is disabled, the Tableau server's time zone is not known yet, or scheduler.enabled is false.
Fix: Check each in turn: the Environments tab in MMA; the schedule on Admin > Schedules; the task's status; flowscheduler.log for messages about the environment's time zone; the scheduler.enabled setting. In high availability, only the leader fires schedules; a standby not firing is normal.
Symptom: the run shows SKIPPED
Cause: The previous run of the same task was still active, so a second copy was not started. A missed or held run is also skipped when the next scheduled run is within recovery.window.hours (4).
Fix: If the previous run is finished on Tableau but still active here, cancel it (Cancel in Run History, or Cancel runs... on Admin > Task Analyze > Monitor). If runs often overlap, move the task to a less frequent schedule.
Symptom: runs stay PENDING or SUBMITTED
Cause: The Flow Scheduler is waiting for Tableau to accept the flow or for the Tableau job to appear. SUBMITTED normally clears within vizportal.adopt.window.sec.default (600 seconds). Many runs firing at once are submitted max.concurrent.per.env (5) at a time.
Fix: Check the flow's jobs on Tableau Server's Jobs page. A Tableau repository connection for the environment in MMA makes job tracking faster. If a run stays active long after Tableau finished, cancel it and run the task again.
Symptom: runs show WAITING_FOR_MMS
Cause: The Flow Scheduler cannot reach MMS.
Fix: Start MMS or wait for it to finish starting. Waiting runs start when MMS is back, within mms.retry.window.minutes (60).
Symptom: runs show SERVER_DOWN or WAITING_FOR_TAB
Cause: Tableau Server, or its repository, is unreachable from the MMS host.
Fix: Restore Tableau Server. Held runs start when it answers again, unless the next scheduled run is within recovery.window.hours (4).
Symptom: runs show START_FAILED
Cause: Tableau refused to start the flow (for example the service account lacks permission or the flow was deleted), MMS stayed unreachable past the retry window, or Tableau Server was down when someone clicked Run (manual runs are not held).
Fix: Read Details in Run History and FSS_api_calls.log for Tableau's message. Check the environment's service account in MMA.
Symptom: the error starts 'Tableau rejected the service account sign-in (not counted towards auto-disable)'
Cause: The environment's Tableau service account password changed or expired. These failures do not count toward automatic disable.
Fix: Update the service account credentials. To change them once for every node, use the Tableau Credentials API.
Symptom: runs show LOST_VISIBILITY
Cause: The Flow Scheduler was following a Tableau job and could not see it for vizportal.lostvisibility.timeout.sec (1800 seconds).
Fix: Check the flow's run history in Tableau for the real outcome. Check that MMS can read the Tableau repository for the environment. Ten LOST_VISIBILITY runs in a row disable the task.
Symptom: runs show COALESCED
Cause: Tableau refused a duplicate of a run already in progress for the same flow, typically around a failover.
Fix: None needed. The original run continued; no failure e-mail is sent.
Symptom: a chain shows FAILED with 'Service restarted mid-chain'
Cause: The Flow Scheduler restarted, or leadership moved, while the chain was running. A chain cannot resume.
Fix: Run the chain again.
Symptom: a task was disabled automatically
Cause: It failed auto.disable.after.failures (5) times in a row, or had 10 LOST_VISIBILITY runs in a row.
Fix: Fix the cause in Run History, then enable the task. Enabling resets the failure count.
E-mail¶
Symptom: no notification e-mails at all
Cause: A switch is off or SMTP is not configured.
Fix: Check, in order:
notifications.enabledistruein MMA Tools > FSS Configuration... > Properties, and the Flow Scheduler was restarted.- Email notifications is on for the environment in Admin > Settings > General (off by default).
- The task has Enable email notifications for this task and the right events.
- MMA Preferences > Settings > Email has the SMTP host, port, sender and login.
notifications.delivery.enabledistrue.
Symptom: subscribers do not receive e-mails
Cause: Subscriptions are off for the environment, the subscription is disabled, the run produced no output, or recipients have no e-mail address in Tableau.
Fix: Check Flow subscriptions in Admin > Settings > General and the subscription itself. See Subscriptions and Output.
Symptom: e-mails are late or arrive in bursts
Cause: The mail server returned temporary errors, and sending is retried at growing intervals.
Fix: Look for SMTP errors in flowscheduler.log and fix the mail server or network path. With secure SMTP on, the mail server must support STARTTLS. Queued messages go out at their next attempt.
Symptom: no cluster alert e-mails
Cause: SMTP is not configured, the event is not in ha.alert.email.events, or the alert was suppressed by ha.alert.email.throttle.seconds.
Fix: Configure SMTP in MMA and check the settings in the Configuration Reference.
Sign-in¶
Symptom: 'The Tableau server appears to be unavailable. Please try again shortly.'
Cause: MMS could not reach Tableau Server during sign-in.
Fix: Check that Tableau Server is running and reachable from the MMS host, then try again.
Symptom: password sign-in fails
Cause: Wrong user name or password, the user is not on the site, or the site uses SAML and users have no Tableau password.
Fix: Check the credentials in Tableau. On SAML sites, use Personal Access Token or SSO sign-in. See Sign-In Options.
Symptom: Personal Access Token sign-in is not offered
Cause: flowscheduler.auth.pat.enabled is not true on MMS.
Fix: Add flowscheduler.auth.pat.enabled=true to server\MetaMinerServer.properties on every MMS node and restart MMS.
Symptom: Personal Access Token or SSO sign-in fails, or a trusted ticket returns -1
Cause: Tableau trusted authentication is not set up for the MMS host: the MMS host's source IP is not a trusted host, wgserver.unrestricted_ticket is not true, the user is not on the site, or the clocks differ.
Fix: In MMA, Tools > FSS Configuration... > Environments, select the environment and click Test Trusted Ticket..., then fix what it reports. tsm authentication trusted configure replaces the whole trusted host list, so list every MMS node each time. To see which source IP Tableau receives, look for POST /trusted in the access*.log files under data\tabsvc\logs\httpd\ on Tableau Server. After tsm pending-changes apply, wait until tsm status -v shows every process running.
Symptom: 'Trusted Authentication is working for ... but ... could not sign in'
Cause: Trusted authentication works for the environment, but that user is most likely not on the Tableau site or not licensed.
Fix: Add the user to the site, or use Password or Personal Access Token sign-in.
Symptom: SSO sign-in isn't available for an environment
Cause: The message "SSO sign-in isn't available for "wgserver.unrestricted_ticket prerequisite is missing for that environment.
Fix: Complete the Tableau trusted authentication setup for that environment, or use Password or Personal Access Token sign-in. See Sign-In Options.
Symptom: Sign in with SSO is not shown
Cause: SAML is not enabled or not complete on the SAML / SSO tab in MMA. It needs the entity ID, the ACS URL and the IdP metadata.
Fix: Complete the SAML configuration and click Save SAML configuration. In high availability, copy server\config\saml\ to every node. See Sign-In Options.
Symptom: SSO fails with 'signature is invalid' or 'Expected exactly one Signature, found 2'
Cause: The IdP metadata in MMA is wrong or out of date, or the assertion is not signed by the configured identity provider. "Found 2" means the identity provider signs both the response and the assertion, which older MetaMiner releases rejected.
Fix: Export the identity provider metadata again and load it on the SAML / SSO tab. For "found 2", upgrade MetaMiner.
Symptom: sign-in succeeds but no projects or flows load
Cause: wgserver.unrestricted_ticket is not true, so Tableau returned a restricted session (Personal Access Token and SSO). With SSO, the assertion may also be encrypted, or the user name sent may not match the Tableau user name.
Fix: Set wgserver.unrestricted_ticket to true and run tsm pending-changes apply. Send signed, unencrypted assertions over HTTP-POST, and map the identity provider attribute to the Tableau user name.
Symptom: 'unable to find valid certification path'
Cause: The MetaMiner Java runtime does not trust the Tableau Server certificate or its internal certificate authority.
Fix: Import the Tableau Server certificate chain into the MetaMiner truststore.
Symptom: users are signed out unexpectedly
Cause: The session was idle for 30 minutes, MMS restarted ("Your session ended (the MetaMiner server may have been restarted). Please sign in again."), or a load balancer sent the user to another node.
Fix: Sign in again. With several nodes, turn on cookie session affinity on the load balancer. See Load Balancer.
High availability and settings¶
Symptom: MMA refuses a setting with 'is shared by the HA nodes: change it on the preferred leader node'
Cause: The setting is shared between nodes, and this node is not the preferred node.
Fix: Open MMA on the node named in the message and change it there. The other nodes take the value at their next Flow Scheduler restart. Per-node settings can be changed on any node.
Symptom: a changed setting has no effect
Cause: The Flow Scheduler was not restarted, or the key is also set as a -D option or in MetaMinerServer.properties, which overrides the MMA value.
Fix: Remove the key from those places and restart the Flow Scheduler. See Configuration Reference.
Symptom: both nodes show STANDBY
Cause: Neither node can write the lease, almost always because of database connectivity.
Fix: Check that every node reaches the shared PostgreSQL database.
Symptom: leadership moves back and forth
Cause: Lease renewals fail now and then, from database latency or clock differences.
Fix: Check database health and NTP time sync. Consider a higher ha.lease.ttl.seconds.
Symptom: MMS stops right after a restart
Cause: It was started before the old process had exited, so the new process shut itself down.
Fix: Wait until the service reports STOPPED, then start it again.
Symptom: the Load panel shows history only
Cause: You are viewing a standby. Live load data is collected by the leader.
Fix: None needed, or open the web interface on the leader.
REST API¶
For API errors such as 401, 403, 409 NOT_LEADER or 503, tokens and API clients, see REST API Troubleshooting and FAQ.