GoldMine Web (GMWEB) - 'Unable to login. All GoldMine licenses are already in use' message when an undocked user tries to log into GoldMine Web

Version 1

    Details

    'Unable to login. All GoldMine licenses are already in use' message when an undocked user tries to log into GoldMine Web

    For  the following scenarios it would be best to create only one undocked  user in order not to have any other influencing factors.

    [STEPS TO PREPARE]
    1. Log into GoldMine Premium Edition with master rights
    2. Tools >> Configure >> License Manager
    3. Button Undock User and select a user from the right list > OK > Close > No need to setup a GoldSync Site for Undocked user
    4. log out of GoldMine Premium Edition

    [STEPS TO REPRODUCE]

    Scenario 1:
    1. Log in to GoldMine Premium Edition with the undocked user's name and password

    [RESULT 1:] The user will be able to log in and to work normally within GoldMine Premium Edition 

    2. Start a supported browser on a machine or device and browse to the GoldMine Web page
    3. Log in to GoldMine Web with the undocked user's name and password

    [RESULT 2:]
    A message appears 'Unable to login. All GoldMine licenses are already in use
    .' 



    The related GMConnect.log file shows the following error:

    2015-03-31 20:09:13,595 - [INFO] Thread id[15] - Validating user:patricks
    2015-03-31 20:09:14,649 - [ERROR] Thread id[20] - GoldMine.Models.ApplicationExceptions.LicenseException: Unable to login. All GoldMine licenses are already in use. Error code: 3
    2015-03-31 20:09:14,649 - [ERROR] Thread id[20] - GoldMine.Models.ApplicationExceptions.ClientInformationException: Unable to login. All GoldMine licenses are already in use.,
    GoldMine.Models.ApplicationExceptions.LicenseException: Unable to login. All GoldMine licenses are already in use.
       at GoldMine.Models.GoldMineAPI.GoldMineAPIEntry.LoadAPI(String GmBaseAlias, String ContactSetAlias, DatabaseInfo gmBaseInfo, DatabaseInfo contactSetInfo, String userName, String password)
    2015-03-31 20:09:14,656 - [ERROR] Thread id[20] - GoldMine.Models.ApplicationExceptions.ClientInformationException: Unable to login. All GoldMine licenses are already in use.,
    GoldMine.Models.ApplicationExceptions.ClientInformationException: Unable to login. All GoldMine licenses are already in use.
       at GoldMine.Models.Log.GMLoggerFactory.GMLogger.ErrorClientAndServer(Object customMessage, Exception e)
       at GoldMine.Models.GoldMineAPI.GoldMineAPIEntry.LoadAPI(String GmBaseAlias, String ContactSetAlias, DatabaseInfo gmBaseInfo, DatabaseInfo contactSetInfo, String userName, String password)
       at GoldMine.Models.GoldMineAPI.GoldMineAPIEntry.Load(String userName, String password, Boolean isWeb)
    2015-03-31 20:09:14,656 - [INFO] Thread id[15] - user:  signed out
    2015-03-31 20:09:14,656 - [ERROR] Thread id[15] - GoldMine.Models.ApplicationExceptions.ClientInformationException: Unable to login. All GoldMine licenses are already in use.,
    GoldMine.Models.ApplicationExceptions.ClientInformationException: Unable to login. All GoldMine licenses are already in use.
       at GoldMine.Models.Log.GMLoggerFactory.GMLogger.ErrorClientAndServer(Object customMessage, Exception e)
       at GoldMine.Models.GoldMineAPI.GoldMineAPIEntry.Load(String userName, String password, Boolean isWeb)
       at GoldMineMobile.Controllers.AccountController.<>c__DisplayClass8.<LogOnEncripted>b__5()

    4. Log out of and/or close both applications

    Scenario 2:
    1. Start a supported browser on a machine or device and browse to the GoldMine Web page
    2. Log in to GoldMine Web with the undocked user's name and password

    [RESULT 3:]
    The user will be able to log in and to work normally within GoldMine Web

    3. Log in to GoldMine Premium Edition with the undocked user's name and password

    [RESULT 4:]
    The undocked user cannot log into GoldMine Premium Edition and a message appears 'The maximum number of licenses users are currently logged into GoldMine! Please purchase additional GoldMine licenses to allow for more simultaneous users...'




    4. Log out of and/or close both applications

    The  further steps are only in case and for demonstration that this applies  to undocked users - concurrent GoldMine Premium licenses do not behave  in the same manner if there are still licenses available.

    [STEPS TO PREPARE]
    Further steps to remove the undocked user license again
    1. Log into GoldMine Premium Edition with master rights
    2. Tools > Configure > License Manager
    3. Highlight the undocked user's License > Button Remove License > Yes > Close
    4. Log out of GoldMine Premium Edition

    [STEPS TO VERIFY]
    Scenario 3:
    1. Log in to GoldMine Premium Edition with the undocked user's name and password

    [RESULT 1:]
    The user will be able to log in and to work normally within GoldMine Premium Edition   

    2. Start a supported browser on a machine or device and browse to the GoldMine Web page
    3. Log in to GoldMine Web with the undocked user's name and password

    [RESULT 2:]
    The user will be able to log in and to work normally within GoldMine Web 



    4. Log out of and/or close both applications

    Scenario 4:

    1. Start a supported browser on a machine or device and browse to the GoldMine Web page
    2. Log in to GoldMine Web with the original undocked user's name and password

    [RESULT 3:]
    The user will be able to log in and to work normally within GoldMine Web

    3. Log in to GoldMine Premium Edition with the original undocked user's name and password

    [RESULT 4:]
    The user will be able to log in and to work normally within GoldMine Premium Edition



    Resolution

    [CAUSE/EXPLANATION]
    Regardless in which  application a user logs into in order to access GoldMine data
    - via  GoldMine Premium Edition or GoldMine Web
    Only 1 GoldMine Premium  Edition license is taken from the available license pool.

    - By default GoldMine is a concurrent user system, means an E-license has unnamed licenses up to the determined user amount  and any user can log into GoldMine Premium Edition even several times.  Per log in/session 1 seat of the license pool is blocked and is  (usually) released when the user logs out of GoldMine again, which means  that if a user is logged into GoldMine Premium Edition from 2  workstations at the same time the license pool will be reduced by 2  licenses. The same applies in a scenario when a user logs into GoldMine  Premium Edition and also GoldMine Web, the overall amount of  concurrent seats in the still available license pool will be reduced by 2  licenses. 

    This is the reason in the above scenarios 3 and 4 and responsible that a not undocked user is able to log in to  GoldMine Premium Edition and also GoldMine Web at the same time. Only  when this will be done by several users at the same time and all  available seats in the license pool are blocked no further users can log  into either GoldMine Premium Edition or GoldMine Web.

    - Once a GoldMine administrator creates one or several Undocked licenses  within the License Manager, these licenses will be named licenses and  are reserved solely for the specific users upon the the assigned user  names in the License Manager, these named license(s) will reduce the  overall license pool of unnamed licenses by the amount of undocked  licenses.

    - An undocked license let the undocked user to log in at  any time into GoldMine Premium Edition or any related application like  GoldMine Web (GMWEB) but only ONE TIME, means for one session, as then  the named license is blocked.

    This is the reason in  the above scenarios 1 and 2 and responsible that the undocked user is  getting the message that All licenses are in use - in this case it is  literally the one and only undocked user's single license and not the  overall license pool anymore - and cannot log in.
      

    [CONCLUSION]
    Even if not undocked users are able in most occasions to log into GoldMine Premium Edition AND into GoldMine Web and  maybe even never experiencing an error message 'Unable to login. All  GoldMine licenses are already in use' in GoldMine Web or 'The maximum number of licenses users are currently  logged into GoldMine! Please purchase additional GoldMine licenses to  allow for more simultaneous users...' within GoldMine Premium Edition   it is highly recommended to train and advise all users only to log into  one application - either GoldMine Premium Edition OR GoldMine Web but not in both applications at the same time.


    [Additional Information:]
    - This was originally documented in the ReadMe  files for GoldMine Mobile and is available in the GoldMine Premium  Edition Readme file since GMPE 2014.2 as topic 71  'An undocked user cannot login into GoldMine Mobile or Web while already logged in to GoldMine Premium on a network and connected to the application server used by GoldMine Mobile.  The login will fail with a message ‘All GoldMine licenses are already in use.'

    - In order to reduce any potential licensing issues upon GoldMine Web and GoldMine Mobile, both applications are developed that the same user can work actively only in one session at the same time.

    a. When a user is already logged into GoldMine Web and then logs into GoldMine Mobile e.g. on a different device / different browser As soon as this user performs any action on the original GoldMine Web session, the user will get again the login window for GoldMine Web.

    b. When a user is already logged into GoldMine Mobile and then logs into GoldMine Web e.g. on a different device / different browser As soon as this user performs any action on the original  GoldMine Mobile session, the user will get again the login window for GoldMine Mobile

    c. When a user is already logged into GoldMine Web and then logs into different GoldMine Web session as the same user for example on a different device / different browser, as soon as this user performs any action on the original  GoldMine Web session, the user will get again the login window for GoldMine Web.
     
    d. When a user is already logged into GoldMine Mobile and then logs into different GoldMine Mobile session as the same user for example on a different device / different browser, as soon as this user performs any action on the original  GoldMine Mobile session, the user will get again the login window for GoldMine Mobile.