Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour à tous,
J'ai un problème pour ma première utilisation de orcascript:
Sybase (R) OrcaScript interpreter version 9.0. Using source file get_latest_version.dat. Command syntax error at line 1. Found "session scc", expected "session"
Voici mon .dat:
start session scc get connect properties "C:\APP\APP.pbw" scc set connect property userid "adm" scc set connect property logfile "C:\MyExample.log" scc set connect property logappend "FALSE" scc connect scc set target "app.pbt" "OUTOFDATE EXCLUDE_CHECKOUT" scc refresh target "incremental" scc Close end session
Pouvez-vous m'aider s'il vous plait?
Dernière modification par kocaine (18-12-2014 08:37:18)
Hors ligne
Quel est l'encodage du fichier .dat ? (ansi / utf), et quel est le type des retours chariots ?
On dirait qu'orca a vu la 3e ligne du script comme si elle était à la suite du "start session".
Mes scripts pour orca9 sont en ansi.
Hors ligne
Merci pour l'analyse.
J'ai recopié le script dans un nouveau fichier sous notepad et effectivement les retours chariot étaient mal interprétés.
Hors ligne
Les choses serieuse commencent
J'ai ce message en sortie de ma commande
allocFromPool(532) failed: chunk size = 32768
J'ai pas trop compris ...
Hors ligne
kocaine a écrit:
Les choses serieuse commencent
J'ai ce message en sortie de ma commandeCode:
allocFromPool(532) failed: chunk size = 32768J'ai pas trop compris ...
Tu pourrais préciser ? Tu parles de l'appel de la commande orcascr9.exe ?
Que fais-tu dans ton script orca ? C'est le script que tu as listé au début du fil ou tu as rajouté des commandes ?
Y a-t-il des infos intéressantes dans le fichier de log C:\MyExample.log ?
Hors ligne
Oui c'est le retour du lancement de la commande orcascr9.exe et le script orca est le même que sur mon premier message.
la seule ligne pertinente dans C:\MyExample.log est la suivante:
PBORCA_SccRefreshTarget. Incremental Rebuild
Le reste des logs s'affiche dans la fenetre de commande "cmd"
Sybase Heap Manager Exception: allocFromPool(532) failed: chunk size = 32768 _______________________________________________________________________________ Heap Summary: _______________________________________________________________________________ #blocks #blocks #blocks #bytes #bytes #bytes size index | range free in use total free in use total ________ ________ ________ __________ __________ __________ ___________________ 36 5970 6006 864 143280 144144 00 | 0..8 24 21320 21344 768 682240 683008 01 | 9..16 20 12705 12725 800 508200 509000 02 | 17..24 7 12341 12348 336 592368 592704 03 | 25..32 99 27 126 5544 1512 7056 04 | 33..40 134 10 144 8576 640 9216 05 | 41..48 120 62 182 8640 4464 13104 06 | 49..56 10 86 96 800 6880 7680 07 | 57..64 2 9 11 176 792 968 08 | 65..72 4 26 30 384 2496 2880 09 | 73..80 8 307 315 832 31928 32760 10 | 81..88 5 661 666 560 74032 74592 11 | 89..96 6 1474 1480 720 176880 177600 12 | 97..104 2 2102 2104 256 269056 269312 13 | 105..112 2 1636 1638 272 222496 222768 14 | 113..120 6 400 406 864 57600 58464 15 | 121..128 2 4 6 304 608 912 16 | 129..136 6 0 6 960 0 960 17 | 137..144 4 14 18 672 2352 3024 18 | 145..152 5 0 5 880 0 880 19 | 153..160 5 0 5 920 0 920 20 | 161..168 10 0 10 1920 0 1920 21 | 169..176 2 3 5 400 600 1000 22 | 177..184 3 1 4 624 208 832 23 | 185..192 3 5 8 648 1080 1728 24 | 193..200 4 0 4 928 0 928 26 | 209..216 3 1 4 720 240 960 27 | 217..224 3 1 4 744 248 992 28 | 225..232 3 1 4 768 256 1024 29 | 233..240 3 0 3 816 0 816 31 | 249..256 3 21 24 1200 8400 9600 32 | 257..384 2 13 15 1056 6864 7920 33 | 385..512 2 9 11 1568 7056 8624 34 | 513..768 2 3 5 2080 3120 5200 35 | 769..1024 1 6 7 1552 9312 10864 36 | 1025..1536 2 3 5 4128 6192 10320 37 | 1537..2048 3 5 8 9264 15440 24704 38 | 2049..3072 2 1 3 8224 4112 12336 39 | 3073..4096 3 1 4 18480 6160 24640 40 | 4097..6144 1 6 7 8208 49248 57456 41 | 6145..8192 1 4 5 12304 49216 61520 42 | 8193..12288 0 2 2 0 32800 32800 43 | 12289..16384 1 10 11 24592 245920 270512 44 | 16385..24576 1 0 1 32784 0 32784 45 | 24577..32768 2 2 4 98336 98336 196672 46 | 32769..49152 1 0 1 65552 0 65552 47 | 49153..65536 0 2 2 0 196640 196640 48 | 65537..98304 1 0 1 196624 0 196624 50 | 131073..196608 2 0 2 524320 0 524320 51 | 196609..262144 1 0 1 524304 0 524304 53 | 393217..524288 0 20989 20989 0 687767552 687767552 ** | pool chunks ________ ________ ________ __________ __________ __________ ___________________ 572 80243 80815 1576272 691286824 692863096 VM size: 692865024 _______________________________________________________________________________
Merci pour l'aide
Hors ligne
kocaine a écrit:
Le reste des logs s'affiche dans la fenetre de commande "cmd" [...]
Heuu, je ne me rappelais pas qu'il y avait ce genre de logs sur des allocations de mémoire. J'ai un script qui permet de reconstruire une pbl à partir de sources stockées sur github, il faudrait que je regarde (mais pas tout de suite...)
Hors ligne
Bonjour,
Idem :
Heuu, je ne me rappelais pas qu'il y avait ce genre de logs sur des allocations de mémoire.
Il faut vérifier la cohérence du projet à construire (Full rebuild dans Powerbuilder => OK ?), de souvenir, il me semble que dans la version 9 tout problème se termine rapidement en GPF.
Hors ligne
seki a écrit:
J'ai un script qui permet de reconstruire une pbl à partir de sources stockées sur github, il faudrait que je regarde (mais pas tout de suite...)
ça serait sympa de ta part,merci.
J'ai utilisé le même script sur un poste physique et sur une VM: le problème de mémoire n'apparait que sur la VM
Hors ligne
Ah c'est dans une VM ? Il y a assez de mémoire et d'espace disque configurés ? C'est quelle VM ?
Si tu veux un exemple de script, tu peux regarder dans mon projet Treelist (voir du côté derebuild_90.bat + rebuild_pbl_from_src_90.orca )
C'est bizarre, je viens de l'exécuter pour voir et je n'ai pas les logs d'allocation mémoire (il me semblait bien que ça ne me disait rien... )
Hors ligne
Salut,
J'ai réussi à faire tourner le script sur ma machine physique.
Cependant, je me heurte à un petit problème
Library: c:\App\main\main.pbl Object: App Forward Declarations (0004): Error C0001: Illegal data type: u_trans_pc Errors encountered during import/compile. Check SMS log.
L'objet u_trans_pc hérite d'un objet qui lui même hérite de "transaction".
Cet objet "u_trans_pc" est déclaré en global dans le fichier .sra.
Mon script Orca plante directement parce que le fichier u_trans_pc.sru est dans la pbl main mais j'ai l'impression que l'option "migrate" ne marche pas sur le fichier .sra
D'avance merci pour votre aide
Hors ligne
Bonjour,
Pour reconstruire le contenu d'une PBL, ORCA utilise les fichiers PBG contenant la listes des objets à intégrer dans une PBL. Il arrive parfois que ces fichiers soient incorrectement mis à jour et il faut ajuster leurs contenus manuellement.
Hors ligne
Bonjour,
Le fichier u_trans_pc est bien défini dans le .PBG:
@begin Objects ... ... ... "main\\u_trans_pc.sru" "main\\main.pbl"; ... ... @end;
Un get latest version depuis l'IDE Powerbuilder fonctionne et ne renvoi aucun message d'erreur lié à cet objet.
Hors ligne
tu dis :
L'objet u_trans_pc hérite d'un objet qui lui même hérite de "transaction".
L'ancêtre de u_trans_pc ?
Hors ligne
L'ancêtre de u_trans_pc est uo_t_transaction.
Et l'ancêtre de uo_t_transaction est transaction.
L'objet u_trans_pc est declaré dans le fichier .sra qui est lu en premier par ORCA alors qu'il est défini dans le fichier u_trans_pc.sru
Hors ligne
Bonjour,
Tu ne donnes pas assez de détails sur ce que tu fais réellement. Si tu tentes de reconstruire un projet à partir d'une target.
Il faut d'abord recréer l'ensemble des pbls et importer les objets à l'intérieure et seulement faire le rebuild après la première opération soit totalement terminée:
scc set target ".\prj\prj.pbt" importonly outofdate
scc refresh target full
De souvenir, il ne faut pas utiliser l'option refresh_all, il y a un regenerate à chaque import d'objet dans une pbl et sur la reconstruction complète d'un projet toutes les dépendances ne sont pas encore satisfaites et tu te retrouves avec l'erreur logique que tu décris.
Je te dis ça de souvenir, ça fait maintenant quelques années que j'ai mis au point mes scripts ORCA et je n'y touche plus.
Hors ligne
Voici mon script:
set targetFile = "c:\App\main\App" set targetFile += ".pbt" start session scc set connect property provider "ClearCase" scc set connect property userid "Dev21" scc set connect property localprojpath "c:\App\main" scc set connect property logfile "c:\App\logs_pl.log" scc set connect property logappend false scc set connect property deletetempfiles true scc connect scc set target targetFile importonly scc refresh target migrate scc close end session
Et voici le resultat du script:
Library: c:\App\main\main.pbl Object: App Forward Declarations (0004): Error C0001: Illegal data type: u_trans_pc Errors encountered during import/compile. Check SMS log.
J'essaie de reconstruire les PBL à partir des sources.
Hors ligne
Bonjour,
Il y a très longtemps que j'ai travaillé sur Orca et je n'avais plus en tête toutes les subtilités sur les options.
Je me suis rafraichi la mémoire en relisant la documentation. En fait l'option importonly, importe uniquement les objets présents dans ton répertoire local. C'est en fait ce que je fais pour reconstruire mes projets, je travaille en mode Offline.
J'utilise un script en amont d'ORCA pour récupérer la dernière version du source avec mon gestionnaire de source (CVS dans mon cas). Je procède de cette manière car si on laisse ORCA récupérer la dernière version du source sur le serveur et reconstruire le projet (mode ONLINE), ça dure plusieurs heures pour mes projets !! et seulement quelques minutes en mode Offline.
Dans ton cas, il faut donc que tu fasses :
scc set target targetFile refresh_all
Le mode refresh_all permet à ORCA d'obtenir la dernière version des objets dans le dépôt à importer dans la pbl.
Hors ligne
Bonjour,
J'ai essayé le refresh_all et ça donne le même résultat.
Le problème se situe après la création des librairies:
Bootstrapping Application... PBORCA_SccRefreshTarget. Incremental Rebuild Calling cm_rebuild_application(CM_REBUILD_INCREMENTAL). Library: c:\App\main\main.pbl Object: app Forward Declarations (0004): Error C0001: Illegal data type: u_trans_pc Errors encountered during import/compile. Check SMS log. PBORCA_SccClose 05/02/2015 13:17 Source control terminated
Remarque:
Un build avec PowerGen n'a pas ce problème d'ordre de définition d'objets dans les fichiers
j'arrive à construire mon application alors que l'objet u_trans_pc est défini dans un fichier autre que App.sra
Par contre ORCA commence par traiter ce fameux fichier .sra en premier et me dit que l'objet u_trans_pc n'est pas défini (Il n'arrive pas à voir qu'il est défini dans un autre fichier)
Merci pour l'attention que vous portez à mon problème
Hors ligne
Bonjour,
Pourquoi ? scc refresh target migrate
Dans la mesure ou tu reconstruis ton projet de zéro, il faut faire : scc refresh target full
Si l'erreur persiste, dans ce cas, une donnée n'est tout simplement pas à jour dans ton dépôt. En général, une déclaration d'objet dans un fichier PBG est manquante ou la target n'est pas à jour.
Suite à l'erreur, il faut ouvrir le projet dans Powerbuilder et voir quels objets manquent dans les pbl pour déterminer d’où vient le problème et mettre à jour les PBG en conséquence.
Hors ligne