L2J-FR
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


Forum pour réunir les administrateurs de serveur L2
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment : -21%
LEGO® Icons 10329 Les Plantes Miniatures, ...
Voir le deal
39.59 €

 

 Global Task

Aller en bas 
2 participants
AuteurMessage
darksimonus

darksimonus


Nombre de messages : 732
Date d'inscription : 12/09/2007

Global Task Empty
MessageSujet: Global Task   Global Task Empty22/04/10, 02:21 pm

Bonjour à tous,

J aurais aimé savoir si j'étais le seul à avoir des probleme de global task cela est un probleme qui a toujours exister pour ma part sur L2Jfree.
Les global Task lancant des pythons (genre pour autoevent) marchent en moyen 1 jours sur 2.
je met bien 1 dans le premier paramètre puis l'heure dans le second paramètres

Quelqu'un connait ce probleme
Revenir en haut Aller en bas
http://www.l2sacrifice.fr/
Psychokiller1888

Psychokiller1888


Nombre de messages : 114
Age : 40
Localisation : Suisse
Date d'inscription : 24/02/2008

Global Task Empty
MessageSujet: Re: Global Task   Global Task Empty29/04/10, 12:36 pm

Le soucis est simple:

Tu lances via une entrées dans global_tasks, une tâche de type TYPE_GLOBAL_TASK. Jusque là tout est normal. Mettons que le jython que tu appelles lance un tvt par exemple, simple à faire. Le premier lancement du serveur la colone "last_activation" ne contient rien, un timer est lancé pour l'heure que tu as renseigné en colone param2. A l'heure indiquée, ton script se lance. Et c'est là que ce trouve le soucis. Le script prend du temps pour se dérouler du début à la fin, comme mes tvt qui dure 20 minutes... La colone "last_activation" sera mise à jour avec "heure de start + temps execution du script". Donc mettons que tu lances un event de 15 minutes à 16h, last_activation contiendra 16h+15min. Vu que tu le lances tous les jours, le lendemain au load des tâches, il doit lancé à 16h ton tvt, mais avec un interval de 24h par rapport au dernier lancement. Tu peux pas, parce que l'heure mini pour lancer est à 16h15 alors que tu veux lancer à 16h... Donc ce jourtombe à l'eau, par contre le lendemain ce sera ok à nouveau puisque le dernier lancement du script était 47h45 plus tôt donc plus grand que 24h.

A moin que ça ai changé depuis, mais y'a un moment le soucis était là.

Sinon c'est un soucis de milisecondes Smile

Pour confirmer, ce soir si une de tes tâches jython se lance, donne moi l'heure à laquelle elle doit se lancer d'après la table global_tasks et donne moi le last_activation qui s'est inscris une fois l'event terminé stp.


Si ce que je dis c'est pas n'importe quoi, le coup du temps d'execution du script, un fix possible pourrais être:

Code:

### Eclipse Workspace Patch 1.0
#P Semper Fidelis
Index: trunk/l2jfree-core/src/main/java/com/l2jfree/gameserver/taskmanager/tasks/TaskManager.java
===================================================================
--- trunk/l2jfree-core/src/main/java/com/l2jfree/gameserver/taskmanager/tasks/TaskManager.java   (revision 2043)
+++ trunk/l2jfree-core/src/main/java/com/l2jfree/gameserver/taskmanager/tasks/TaskManager.java   (working copy)
@@ -140,15 +140,6 @@
       

       public void run()

       {

-         try

-         {

-            _task.onTimeElapsed(this, getParams());

-         }

-         catch (Exception e)

-         {

-            _log.warn(this, e);

-         }

-         

          Connection con = null;

          try

          {

@@ -168,6 +159,15 @@
          {

             L2DatabaseFactory.close(con);

          }

+

+         try

+         {

+            _task.onTimeElapsed(this, getParams());

+         }

+         catch (Exception e)

+         {

+            _log.warn(this, e);

+         }

          

          if (_type == TYPE_SHEDULED || _type == TYPE_TIME)

             stopTask();



Maintenant pour corriger réellement il me faudrait les données.



EDIT:
Mon script tvt devait se lancer à 16:00:00 avant hier. Il s'est lancé, les joueurs l'ont joué. Mais si je convertis last_activation, il me donne:
Tue, 27 Apr 2010 14:30:31 GMT

Donc last_activation s'est inscrit à la fin du tvt Smile C'est à dire 16h + les 10 minutes d'enregistrement + les 20 minutes de jeu + les teleports back et le nettoyage = 16h30:31 secondes. Le patch devrait corriger le soucis, puisqu'il inscris d'abord le last_activation puis execute la tâche.

Merci de me confirmer si ça résoud le soucis, et dans le cas d'une résolution, je corrigerai les sources l2jfree directement.
Revenir en haut Aller en bas
Psychokiller1888

Psychokiller1888


Nombre de messages : 114
Age : 40
Localisation : Suisse
Date d'inscription : 24/02/2008

Global Task Empty
MessageSujet: Re: Global Task   Global Task Empty07/05/10, 09:32 am

De rien hein! C'était avec plaisir! Surtout merci de m'avoir dis si oui ou non ça foctionne Smile En gros, les prochaines questions, tu peux aller te brosser! A bon entendeur!
Revenir en haut Aller en bas
darksimonus

darksimonus


Nombre de messages : 732
Date d'inscription : 12/09/2007

Global Task Empty
MessageSujet: Re: Global Task   Global Task Empty10/05/10, 09:37 am

j'étais en vacances et je viens juste de retrouvé le post

merci à toi, désolé du retard

j'en parle aux personnes s occupant du java chez moi et je ferais un retour
Revenir en haut Aller en bas
http://www.l2sacrifice.fr/
Psychokiller1888

Psychokiller1888


Nombre de messages : 114
Age : 40
Localisation : Suisse
Date d'inscription : 24/02/2008

Global Task Empty
MessageSujet: Re: Global Task   Global Task Empty10/05/10, 10:14 am

L'entier a été revisité par NBali et moi et completement debug puis commit sur l2jfree, update sur 8370
Revenir en haut Aller en bas
darksimonus

darksimonus


Nombre de messages : 732
Date d'inscription : 12/09/2007

Global Task Empty
MessageSujet: Re: Global Task   Global Task Empty11/05/10, 08:51 am

super mille merci faut maintenant qu'on remonte nos 600rev de retard Smile

encore merci
Revenir en haut Aller en bas
http://www.l2sacrifice.fr/
Contenu sponsorisé





Global Task Empty
MessageSujet: Re: Global Task   Global Task Empty

Revenir en haut Aller en bas
 
Global Task
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Global Task
» Nouvelle task

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
L2J-FR :: Général :: Aides et Conseils-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser