Re: consulta hibernate

2020-11-19 Thread Juan José Santamaría Flecha
On Thu, Nov 19, 2020 at 2:18 PM Hellmuth Vargas  wrote:

>
> Por aqui nuevamente poniendo oficio!, tengo una aplicación que emplea
> Hibernate para su persistencia (se está ejecutando en un PostgreSQL 11.7 )
> dentro de las consultas que se están ejecutando de forma frecuente, esta no
> se ha podido optimizar:
>

Cuando me ha tocado intentar optimizar la ejecución de consultas generadas
por Hibernate como estas, lo que evitaba que los costes se disparasen era
subir el join_collapse_limit. Pero en algún caso eso resultaba en tiempos
de parse altos para consultas que luego eran rápidas en ejecución, y en
esos casos forzar el uso del optimizador genético, bajando los valores
de geqo_threshold y geqo_effort, fue con lo que conseguimos
mejores resultados.

Un saludo,

Juan José Santamaría Flecha


consulta hibernate

2020-11-19 Thread Hellmuth Vargas
Hola Lista

Por aqui nuevamente poniendo oficio!, tengo una aplicación que emplea
Hibernate para su persistencia (se está ejecutando en un PostgreSQL 11.7 )
dentro de las consultas que se están ejecutando de forma frecuente, esta no
se ha podido optimizar:

select carac0_.id as id10_, carac0_.guion_id as guion13_10_,
carac0_.nombreClase as nombreCl3_10_, carac0_.nombreGuion as nombreGu4_10_,
carac0_.observaciones as observac5_10_, carac0_.people as persona14_10_,
carac0_.tipificacion_id as tipific15_10_, carac0_.uniqueid as uniqueid10_,
carac0_.usuarioGestionaId as usuarioG7_10_, carac0_.fechaRemarcacion as
fechaRem8_10_, carac0_.numeroIntento as numeroIn9_10_, carac0_.prioridad as
prioridad10_, carac0_.telefonoActivo as telefon11_10_,
carac0_.telefonoRemarcacion as telefon12_10_, carac0_.DTYPE as DTYPE10_
from public.caracterizacionPantalla carac0_
cross join ( select id, fechaCreacion, fechaModificacion, idUsuarioCrea,
idUsuarioModifica, agent, agentChannel, apellidoCliente, callerId,
callerIdName, chanel, fechaGrabacion, fechaHoraContacto,
idServidorTelefonia, identificacionCliente, nombreCliente, queue,
tipoIdentificacionCliente, tipoLlamada, uniqueId, documento, fecha,
fechaInicioGestion, casoCrm_id, people_id, usuario_id, departamento,
estadoCivil, fechaAsigna, fechaNac, genero, guionBaseSalida_id,
guionOriginalSalida_id, datocomplementario1, datocomplementario2,
datocomplementario3, datocomplementario4, municipio, primerApellido,
primerNombre, segundoApellido, segundoNombre, telefono1, telefono2,
telefono3, telefono4, tipoDocumento, marcadorLista_id, usuarioAsigna_id,
usuarioAsignado_id, direccion, email, fechaEvento, horaEvento, lugarEvento,
motivo, motivoDescripcion, guionHtml_id, categoriaFormulario, formGuion_id,
categoriaVerificado, formVerificacion_id, null::varchar as audio,
null::int8 as idBase, null::varchar as identificacion, null::varchar as
nombres, null::varchar as autorizaFactura, null::varchar as celularTutor,
null::varchar as ciudadAtencion, null::bool as consultoEstadoCuenta,
null::bool as consultoPlantillaEstado, null::bool as consultoTickets,
null::varchar as descripcion, null::varchar as detalleTransaccion,
null::varchar as errorDetail, null::varchar as estadoBot, null::varchar as
idCalificador, null::varchar as idCredito, null::varchar as
identificacionTutor, null::int4 as intentosCreacionCasoCosmos,
null::varchar as menorEdad, null::varchar as motivoWSCosmos, null::varchar
as motivoWSCosmosNombre, null::varchar as nombreTutor, null::varchar as
numeroTicket, null::varchar as resultWSBPM, null::bool as
resultadoWSCosmos, null::int8 as smsOutboundId, null::varchar as
telefonoTutor, null::varchar as tipoIdentificacionTutor, null::varchar as
wsTipBotResult, null::int8 as canalAtencion_id, null::int8 as
tipEscalamiento_id, null::int8 as tipoBotInputData_id, null::int8 as
tipoCanalWsCosmos_id, null::int8 as tipoCliente_id, null::int8 as
twitterConversacion_idInvitado, null::int8 as twitterTweet_id, null::int8
as tipIndisponibilidad_id, null::int8 as directorio_id, null::bool as
enviarSms, 4 as clazz_ from public.GuionSimpleVerificado union all select
id, fechaCreacion, fechaModificacion, idUsuarioCrea, idUsuarioModifica,
agent, agentChannel, apellidoCliente, callerId, callerIdName, chanel,
fechaGrabacion, fechaHoraContacto, idServidorTelefonia,
identificacionCliente, nombreCliente, queue, tipoIdentificacionCliente,
tipoLlamada, uniqueId, documento, fecha, fechaInicioGestion, casoCrm_id,
people_id, usuario_id, departamento, estadoCivil, fechaAsigna, fechaNac,
genero, guionBaseSalida_id, guionOriginalSalida_id, datocomplementario1,
datocomplementario2, datocomplementario3, datocomplementario4, municipio,
primerApellido, primerNombre, segundoApellido, segundoNombre, telefono1,
telefono2, telefono3, telefono4, tipoDocumento, marcadorLista_id,
usuarioAsigna_id, usuarioAsignado_id, direccion, email, fechaEvento,
horaEvento, lugarEvento, motivo, motivoDescripcion, guionHtml_id,
categoriaFormulario, formGuion_id, null::varchar as categoriaVerificado,
null::int8 as formVerificacion_id, null::varchar as audio, null::int8 as
idBase, null::varchar as identificacion, null::varchar as nombres,
autorizaFactura, celularTutor, ciudadAtencion, consultoEstadoCuenta,
consultoPlantillaEstado, consultoTickets, descripcion, detalleTransaccion,
errorDetail, estadoBot, idCalificador, idCredito, identificacionTutor,
intentosCreacionCasoCosmos, menorEdad, motivoWSCosmos,
motivoWSCosmosNombre, nombreTutor, numeroTicket, resultWSBPM,
resultadoWSCosmos, smsOutboundId, telefonoTutor, tipoIdentificacionTutor,
wsTipBotResult, canalAtencion_id, tipEscalamiento_id, tipoBotInputData_id,
tipoCanalWsCosmos_id, tipoCliente_id, twitterConversacion_idInvitado,
twitterTweet_id, null::int8 as tipIndisponibilidad_id, null::int8 as
directorio_id, null::bool as enviarSms, 6 as clazz_ from public.Entrada
union all select id, fechaCreacion, fechaModificacion, idUsuarioCrea,
idUsuarioModifica, agent, agentChannel, apellidoCliente,