Performance issues with vtkOpenGLBatchedPolyDataMapper

we build a custom mapper with a special getneedtorebuild. narrowed it down to this:

            needtorebuild = 
                //prp->GetColor()                != p->GetColor()                   || 
                //prp->GetAmbientColor()         != p->GetAmbientColor()            ||
                //prp->GetDiffuseColor()         != p->GetDiffuseColor()            ||
                //prp->GetSpecularColor()        != p->GetSpecularColor()           || 
                //prp->GetEdgeColor()            != p->GetEdgeColor()               ||
                //prp->GetVertexColor()          != p->GetVertexColor()             || 
                //prp->GetAmbient()              != p->GetAmbient()                 ||
                //prp->GetDiffuse()              != p->GetDiffuse()                 || 
                //prp->GetSpecular()             != p->GetSpecular()                ||
                //prp->GetSpecularPower()        != p->GetSpecularPower()           || 
                //prp->GetOpacity()              != p->GetOpacity()                 ||
                //prp->GetInterpolation()        != p->GetInterpolation()           ||
                prp->GetRepresentation()         != p->GetRepresentation()          ||
                prp->GetEdgeVisibility()         != p->GetEdgeVisibility()          ||
                prp->GetVertexVisibility()       != p->GetVertexVisibility()        ||
                //prp->GetBackfaceCulling()      != p->GetBackfaceCulling()         ||
                //prp->GetFrontfaceCulling()     != p->GetFrontfaceCulling()        ||
                //prp->GetPointSize()            != p->GetPointSize()               || 
                //prp->GetLineWidth()            != p->GetLineWidth()               ||
                prp->GetLineStipplePattern()     != p->GetLineStipplePattern()      ||
                prp->GetLineStippleRepeatFactor()!= p->GetLineStippleRepeatFactor() ||
                //prp->GetLighting()             != p->GetLighting()                ||
                prp->GetRenderPointsAsSpheres()  != p->GetRenderPointsAsSpheres()   ||
                prp->GetRenderLinesAsTubes()     != p->GetRenderLinesAsTubes()      ||
                prp->GetShading()                != p->GetShading();