Opened 14 years ago
Closed 13 years ago
#503 closed defect (fixed)
Nombres largos y BSR
Reported by: | Pedro Gea | Owned by: | Pedro Gea |
---|---|---|---|
Priority: | blocker | Milestone: | Release 0.6 |
Component: | StrategyBSR | Keywords: | |
Cc: |
Description
Se encuentran problemas con el uso de nombres largos en los objetos MMS (estimaciones, submodelos y jerarquías) y la estrategia de estimación BSR.
Change History (18)
comment:1 Changed 14 years ago by
comment:2 Changed 14 years ago by
comment:3 Changed 14 years ago by
comment:4 Changed 14 years ago by
comment:5 Changed 14 years ago by
Owner: | set to Pedro Gea |
---|---|
Status: | new → accepted |
Se ha de determinar la longitud máxima del nombre completo de archivo a partir del cual se producen errores en el guardado y así elegir adecuadamente los parámetros de los mecanismos "ShortenIdentifier".
comment:7 Changed 14 years ago by
(In [2295]) Se revisan los problemas debidos a la longitud excesiva de los nombres.
Se admite que se no habrá problema cambiar el nombre del archivo OZA del bloque de filtros no lineales de BSR.
Se establece una configuración MMS para la ruta local del paquete.
La configuración relativePath de las estrategias queda obsoleta.
Desaparecen los métodos GetSession y GetPath por defecto de las estrategias
Se modifican los métodos ShortenIdentifier*
en el que se añade la longitud máxima.
Se recuperan los nombres completos para los objetos en BSR.
Se controla la longitud de las rutas en los métodos GetPath de las clases adaptadoras a BSR.
Refs #503
comment:8 Changed 14 years ago by
Nótese que la nueva ruta donde se localizan los ascii de BSR tiene la forma:
%AppData%/tol/MMS/BSR/<estimacion>__<version>/YYYY.MM.DD_HH.MM.SS/
en lugar de la anterior:
%AppData%/tol/tmp/MMS/BSR/Model.at.<estimacion>__<version>/yYYYYmMMdDDhHHiIIsSS.SS/
Los nombres en estos archivos se recortarán convenientemente para evitar errores.
La ruta de MMS por defecto: %AppData%/tol/MMS/
puede modificarse a traves de la configuración de MMS "LocalPath" (ubicada en MMS::Settings).
comment:9 Changed 14 years ago by
Solo queda una dificultad en cuanto al nombre de los objetos debida a
- la limitación TOL en la longitud de los objetos a 255 y
- el hecho de que BSR cree objetos basados en ese nombre añadiendole extensiones como: ".BSR.CodaSummary".
Se sugiere impedir nombres en MMS superiores a una longitud por defecto, menor que 255, claro.
comment:10 Changed 14 years ago by
Buenas, en el bsrlayer se evitaba este problema sustituyendo las cadenas largas por un identificador que fuese:
modelo, nodo observacional, id_session, entrada, salida = "I"+contador
y se guardaba en un registro (que era una tabla, ahora debería ser otro objeto), de forma que luego se deshacía el cambio al finalizar las estimaciones. Si querçeis os paso el código por si os da una idea.
comment:11 Changed 14 years ago by
Gracias Luis, aunque el problema actual es algo más amplio, ya que ahora excede las limitaciones en BSR (éstas ya están prácticamente solucionadas) y se debe a la longitud máxima para el nombre de un objeto o variable TOL cualquiera.
Por ejemplo, si el nombre de un submodelo tiene 150 caracteres y uno de sus términos explicativos también, el identificador del término (submodelName__expTermName
) excederá los 255 caracteres máximos y provocará errores.
Se sugiere utilizar una limitación de unos 100 caracteres para los nombres de los objetos en MMS. En mi opinión esta longitud es más que suficiente para identificar un objeto, otra información descripriva que desee añadirse al objeto debería ubicarse en otros atributos más adecuados.
comment:12 Changed 14 years ago by
(In [2299]) Se amplían los mecanismos para la aceptación de nombres y versiones.
Se crea una limitación en la longitud de los nombres configurable (por defecto en 96).
Se revisan los nombres de los objetos suplementarios y la información de éstos utilizada en BSR.
Véase también el cambio [2279]
Refs #314, #503
comment:13 Changed 14 years ago by
El tique se puede dar por cerrado, porque con los mecanismos implementados se pueden prevenir errores por la longitud del nombre.
Sin embargo no se da respuesta a cómo tratar o manejar objetos anteriores almacenados ya con nombres más largos que el valor máximo configurado.
comment:14 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
Salvo que se solicite de otro modo, MMS será incompatible por defecto con objetos almacenados con nombres demasiados extensos.
Para poder cargarlos bastaría con modificar, al menos temporalmente, la configuración: Real MMS::Settings::TolName.MaxLength
asignándole un valor mayor y luego proceder a renombrar los objetos convenientemente, para una futura carga.
comment:16 Changed 13 years ago by
Resolution: | fixed |
---|---|
sensitive: | → 0 |
Status: | closed → reopened |
Yo aún tengo problemas a la hora de estimar con BSR y objetos de nombres largos. Dejo un ejemplo de estimación que me está dando problemas en B: con un nombre de logitud 75 ( menor que el máximo especificado y recomendado).
Gracias de antemano.
comment:18 Changed 13 years ago by
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
Véanse los cambios [2181] y [2185]