title: How to fix "WARNING: Logging before InitGoogleLogging() is written to STDERR ..." error in Python (or-tools)?
body: <p>I m trying to solve an optimisation problem using python 3.7.1, spider and    or-tools. For the time being, I want to classify objects in 3 different classes using constraints.</p>
  
  <p>First, I tried to solve it using:</p>
  
  <pre><code>    #solver = pywraplp.Solver('LinearExample',
      #                           pywraplp.Solver.GLOP_LINEAR_PROGRAMMING)
  </code></pre>
  
  <p>I got some results but not the expected ones because xA xB xC should be 3 binary vectors.
  So what, i replaced these two lines to solve the problem as an Integer problem, which appears to me more logical, by:</p>
  
  <pre><code>    solver = pywraplp.Solver('SolveIntegerProblem',
                            pywraplp.Solver.CBC_MIXED_INTEGER_PROGRAMMING)
  </code></pre>
  
  <p>When I run the code , a window opens with the message: it has stopped working then I receive the following warning :</p>
  
  <pre><code>    "An error ocurred while starting the kernel"
      WARNING: Logging before InitGoogleLogging() is written to STDERR
      F0327 09:54:41.733001 3784 map_util.h:126] Check failed:   collection‑&gt;insert(value_type(key, data)).second duplicate key: xA
      *** Check failure stack trace: ***
  </code></pre>
  
  <p>Then I have to close the console 
  I don't understand why the problem seems to be x... while it wasn't with 'LinearExample'</p>
  
  <p>Here, the code reproducing the error :</p>
  
  <pre class="lang-py prettyprint-override"><code>from __future__ import print_function
  import pandas as pd
  from ortools.linear_solver import pywraplp
  
  def main():
    solver = pywraplp.Solver('SolveIntegerProblem',
                            pywraplp.Solver.CBC_MIXED_INTEGER_PROGRAMMING)
    #solver = pywraplp.Solver('LinearExample',
    #                         pywraplp.Solver.GLOP_LINEAR_PROGRAMMING)
    # 
    xA = [] # xA[i]=1 if i classified in A, else 0
    xB = [] # xB[i]=1 if i classified in B, else 0
    xC = [] # xC[i]=1 if i classified in C, else 0
  
  
    d={'A':[19286.0,23786.0,9822,5054.0,97466.0,728998.0,275708.0,4576.0,67284.0,385582.0,13450.0,43271.0,44601.0,88372.0],
       'B':[12073.0,21563.0,13077.0,6407.0,91850.0,557996.0,206372.0,2812.0,52362.0,244102.0,11225.0,50612.0,49299.0,76099.0],
       'C':[12048.0,42648.0,35491.0,19800.0,117602.0,643498.0,232377.0,5217.0,79200.0,234259.0,19296.0,114048.0,100725.0,130911.0]}
    coeff = pd.DataFrame(data=d)
  
  
    c={'A':[11503,10638,1984,364,15022,40343,41478,238,3528,51649,5759,5305,7883,301],
       'B':[1783,2047,425,88,2306,6261,6423,51,610,7976,1034,1021,1443,537],
       'C':[128,250,61,15,161,453,461,8,60,566,111,125,161,57]}
    weight = pd.DataFrame(data=c)
  
    nb_obj=len(coeff['A'])
  #variables values : 0 or 1
    for i in range(nb_obj):
        xA.append(solver.IntVar(0.0, 1.0, 'xA'))
        xB.append(solver.IntVar(0.0, 1.0, 'xB'))
        xC.append(solver.IntVar(0.0, 1.0, 'xC'))
  
    # total weight per class is limited 
    solver.Add(sum(xA*weight.A)&lt;=80000)
    solver.Add(sum(xB*weight.B)&lt;=15000)
    solver.Add(sum(xC*weight.C)&lt;=1500)
  
    # number of object in each class is limited
    solver.Add(sum(xA)&lt;=3)
    solver.Add(sum(xB)&lt;=6) 
    solver.Add(sum(xC)&lt;=5)
  
    # 1 object can only belong to a single class
    for i in range (nb_obj):
      solver.Add(xA[i]+xB[i]+xC[i]==1)
  
  
    objective = solver.Objective()
    for i in range(nb_obj):
      objective.SetCoefficient(xA[i], coeff.A[i])
      objective.SetCoefficient(xB[i], coeff.B[i])
      objective.SetCoefficient(xC[i], coeff.C[i])
    objective.SetMaximization()
  
    """Solve the problem and print the solution."""
    result_status = solver.Solve()
    # The problem has an optimal solution.
    assert result_status == pywraplp.Solver.OPTIMAL
  
  
    print('Number of variables =', solver.NumVariables())
    print('Number of constraints =', solver.NumConstraints())
  
    # The objective value of the solution.
    print('Optimal objective value = %d' % solver.Objective().Value())
    print()
    # The value of each variable in the solution.
    for i in range(nb_obj):
      print("obj",i+1," : ",xA[i].solution_value(),xB[i].solution_value(),xC[i].solution_value())
  
  
  
  if __name__ == '__main__':
    main()
  </code></pre>
  
  <p>Could you help me run the code ?</p>